c# - 可选参数无法正常工作

标签 c# .net function reflection optional-parameters

我有一个方法可以选择最后一个参数。

public static DataTable GetQueryResult<T>(string connectionString, string queryText, Dictionary<string, T> dicParameters = null)

当我尝试像这样调用此方法时:

DBOperations.GetQueryResult(myConnectionString, myQuery);

它说方法“GetQueryResult”的重载不接受 2 个参数。

This文档解释说我只能将需要的参数传递给这种方法。

问候

最佳答案

您必须明确指定 T:

DBOperations.GetQueryResult<YourType>(myConnectionString, myQuery);

当您指定 dicParameters 时,T 是隐式的:

var dicParameters = new Dictionary<string, YourType>();
DBOperations.GetQueryResult(myConnectionString, myQuery, dicParameters );

关于c# - 可选参数无法正常工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18999249/

相关文章:

c# - Xamarin Forms IOS 打开 PDF

c# - 用非法变量字符在C#中反序列化json

c# - 调用空函数需要多长时间?

function - 有没有办法在 R 的函数中使用两个 '...' 语句?

C# 编译为 CIL

c# - 如何在c#中制作多个图像的透明背景

c# - .NET 运行时版本问题(supportedRuntime)

.net - .NET 中 Win32 的 ________ 等价物

c# - 使用动态类型作为它自己的基类型的参数

r - 将变量名称传递给绘图函数标题