Tag: 参数

C#XNA Xbox,在这种情况下,可选参数不是可选的

显然,当在Xbox上使用时,可选参数在C#Xna中不起作用,在编译期间会声明非支持性。 我有这样的情况: func(float? a = null, int? b = null) 大量的可选参数默认为“未定义”值,为null。 这种情况是必需的。 在上面的简化示例中,这可以解包,但这不是可选参数允许: func() func(float? a) func(int? b) func(float? a, int? b) 然而,对于大量参数,这是不实际的。 不允许某些参数定义的组合,并导致通过函数的路径,其中我抛出参数exception,其他导致根据参数的值发生各种不同的事情。 这类似于具有相同名称但不相同的函数之间的多态性。 我可以替代地,并且可能最实际地,需要所有参数。 func(float? a, int? b) 然后这样打电话: func(null, 4) 第一个是未定义的。 有没有办法在Xbox上的C#XNA中启用可选参数?

你能在SQL FROM语句中使用SQLParameter吗?

我试图在C#中针对SQL Server数据库创建参数化查询。 码: query = new StringBuilder( “SELECT @fields FROM @tables”); using(SqlConnection connection = new SqlConnection(connection)) { SqlCommand command = new SqlCommand(query.ToString(), connection); command.Parameters.AddWithValue(“@fields”, fields.ToString()); command.Parameters.AddWithValue(“@tables”, tables.ToString()); try { connection.Open(); Int32 rowsAffected = command.ExecuteNonQuery(); Console.WriteLine(“RowsAffected: {0}”, rowsAffected); } catch(Exception ex) { Console.WriteLine(ex.Message); } } 奇怪的部分是失败的消息“必须声明表变量”@ tables \“。但是正如你所看到的,它已被明确定义。 所以我的问题是: 你能传递一个参数来定义FROM语句中的表列表吗? 如果可以,为什么这不起作用?

将OracleParameter与C#TimeSpan一起使用 – Literal不匹配

我进行了广泛的搜索,但我找不到任何关于此的例子。 我有一个类型为TimeSpan的.NET变量,我需要将它放入Oracle DB的IntervalDayToSecond记录中。 参考http://docs.oracle.com/html/B14164_01/featOraCommand.htm此页面,应该可以将TimeSpan对象作为OracleParameter传递,并将其插入到IntervalDayToSecond类型记录中的Oracle DB中。 这是代码: OracleParameter t = new OracleParameter(“PAR_T”, _msg.t); 我以各种方式尝试过,也明确指定了DBType(它不应该是必需的): OracleParameter t = new OracleParameter(“PAR_T”, _msg.t); taxi.OracleDbType = OracleDbType.IntervalDS; 我总是从Oracle得到同样的错误: Devart.Data.Oracle.OracleException:ORA-01861:literal与格式字符串不匹配 我无法理解如何使其发挥作用; 我在这个应用程序中使用了许多参数(类型为String , Integer , Date ),它们都在工作。 在Google上,我找不到使用c# TimeSpan作为参数的某个人的例子。 有没有人试过这个?

在ASPX页面上将“太多参数传递给”存储过程

我无法搞清楚这个错误。 我在ASPX页面上有一个网格,它显示SQL Server 2008数据库中存储过程的数据。 页面加载时,我收到以下错误: “Procedure or function has too many arguments specified.” 这是网格和数据源的代码: <asp:LinkButton ID="ImpersonateUserLinkButton" runat="server" OnClick="Command_Click" CommandName="impersonate" CommandArgument='’ CssClass=”table_command”>Impersonate No data to display. <asp:SqlDataSource ID="SqlDataSource1" runat="server" ConnectionString="” SelectCommand=”sp_GatewayMerchants” SelectCommandType=”StoredProcedure”> 这是存储过程的代码: ALTER PROCEDURE [dbo].[sp_GatewayMerchants] — Add the parameters for the stored procedure here @StartDate DateTime, @EndDate DateTime, @StatusActive bit, @StatusDeactive bit AS BEGIN — […]

将lambda表达式作为参数传递给方法?

这似乎是一个常见的要求,但我无法在任何地方找到解决方案。 我有一个方法,它将根据传递给它的参数OrderBy集合。 我想将’OrderBy’的内容传递给方法,但无法解决如何做到这一点。 我试过的 我已经尝试了一个带字符串的开关(例如,如果你传递’姓名’,它会点击按名称命名它的case ),但这感觉’hacky’和不必要。 我知道它就像Func ,但我无法破解它。 PSEUDO代码: GetOrderedCollection([NOT SURE] orderBy) { return collection.OrderBy(orderBy); }

如何获取F的Func中使用的属性名称字符串

我有一个场景,我必须得到一个字符串数组,代表Func参数中使用的每个属性名称。 这是一个示例实现: public class CustomClass { public string[] GetPropertiesUsed { get { // do magical parsing based upon parameter passed into CustomMethod } } public void CustomMethod(Func method) { // do stuff } } 这是一个示例用法: var customClass = new CustomClass(); customClass.CustomMethod(src => “(” + src.AreaCode + “) ” + src.Phone); … var propertiesUsed = customClass.GetPropertiesUsed; […]

如何使用未指定数量的参数构建一个方法C#

这是我的代码: private static string AddURISlash(string remotePath) { if (remotePath.LastIndexOf(“/”) != remotePath.Length – 1) { remotePath += “/”; } return remotePath; } 但我需要类似的东西 AddURISlash(“http://foo”, “bar”, “baz/”, “qux”, “etc/”); 如果我没记错的话,string.format就是这样…… String.Format(“{0}.{1}.{2}.{3} at {4}”, 255, 255, 255, 0, “4 pm”); C#中有什么东西允许我这样做吗? 我知道我能做到 private static string AddURISlash(string[] remotePath) 但那不是主意。 如果这是某些框架中的某些内容可以完成而在其他框架中没有请指定以及如何解决它。 提前致谢

如何将参数传递给通过Assembly.CreateInstance加载的C#插件?

我现在拥有的(成功加载插件)是这样的: Assembly myDLL = Assembly.LoadFrom(“my.dll”); IMyClass myPluginObject = myDLL.CreateInstance(“MyCorp.IMyClass”) as IMyClass; 这仅适用于具有不带参数的构造函数的类。 如何将参数传递给构造函数?

什么是参数前面的@ Sign

可能重复: 变量名前面的@符号在C#中是什么意思? 我已经用C#编写了大约一年的编码,最近我遇到了以下内容 public bool OnPreUpdate(PreUpdateEvent @event) 正如您所看到的,事件前面有一个“@”符号,这是为了防止编译器将其视为事件类型,因此“@”被视为任何其他文本还是有特殊含义?

Microsoft Reporting:在代码中设置子报表参数

如何设置子报告的参数? 我已成功连接到SubreportProcessing事件,我可以通过e.ReportPath找到正确的子报告,我可以通过e.DataSources.Add添加数据源。 但我发现无法添加报告参数? 我发现有人建议将它们添加到主报告中,但我真的不想这样做,因为主报告根本不应该连接到子报告,除了它正在包装分报告。 我使用一个报告作为主模板,打印报告的名称,页码等。子报告将成为报告本身。 如果我只能找到一种方法来设置子报告的报告参数,我会很高兴… 澄清:创建/定义参数不是问题。 问题是设置它们的值。 我认为自然要做的就是在SubreportProcessing事件中做到这一点。 SubreportProcessingEventArgs实际上有一个Parameters属性。 但它是只读的! 那你怎么用呢? 我怎样才能设定价值?