2016-07-15 97 views
0

我试图在ubuntu上运行的dotnet核心库中指定可选参数。 (版本 - 1.0.0-preview2-003121)无法在C#中使用dotnet核心创建可选参数

我添加签名像这样:

public int ExecuteNonQuery(string cmd, int sqlCommandTimeout = 30){ 
} 

我可以编译并运行该项目没有问题,但我不得不打电话与这两个参数的函数。

如果我打电话只CMD的功能,我得到一个编译错误:

dataLink.ExecuteNonQuery(qry) 

错误:

错误CS7036:没有给定参数对应到所需的形参“ 'X.ExecuteNonQuery'(string,int)'commandTimeOut''

dotnet核心不支持可选参数还是我做错了?谢谢

更新: 可选参数支持和工作 - 问题是因为我通过接口调用类。感谢您的帮助

+0

我认为我们需要更多能够找到解决方案。你能发布更多相关的代码吗? –

+0

@BviLLe_Kid对我来说看起来就像一个完整的例子 – ardila

+0

@ardila好,如果用户遇到他的代码的问题,并从我可以看到,我没有看到任何错误..所以问题不在2行OP提供的代码 –

回答

0

我使用.Net核心(Windows),我绝对不会遇到任何可选参数的问题。请记住,可选参数是该语言的一个特征,而不是框架的特征。

您是否在运行时发现错误?

它不理想,但如果你只有这两个参数,只有最后一个是可选的,你可能会考虑只是创建一个超载?

+0

- arrg - 对不起愚蠢的问题。我通过一个界面给班级打电话 - 直到@Dirk Vollmar指出签名是不同的。 – onemorecupofcoffee

相关问题