c# - C# 上不允许出现默认参数说明符错误

标签 c# .net-3.5 default-parameters

当我构建我的项目时,VC# 提示不允许使用默认参数说明符。它引导我找到这段代码:

public class TwitterResponse
{
    private readonly RestResponseBase _response;
    private readonly Exception _exception;

    internal TwitterResponse(RestResponseBase response, Exception exception = null)
    {
        _exception = exception;
        _response = response;
    }

我的错误是什么?

最佳答案

错误是:

Exception exception = null

您可以转移到 C# 4.0 或更高版本,此代码将编译!

这个问题将帮助你:

C# 3.5 Optional and DefaultValue for parameters

或者您可以在 C# 3.0 或更早版本上进行两次重写以解决此问题:

public class TwitterResponse
{
    private readonly RestResponseBase _response;
    private readonly Exception _exception;

    internal TwitterResponse(RestResponseBase response): this(response, null)
    {

    }

    internal TwitterResponse(RestResponseBase response, Exception exception)
    {
        _exception = exception;
        _response = response;
    }
}

关于c# - C# 上不允许出现默认参数说明符错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14019083/

相关文章:

javascript - 函数体的解结构变量和变量部分之间的区别

c# - DNX/.NET Core 程序集版本控制 : 4. 0.0 与 4.0.10

c# - 如何将 NameValueCollection 转换为 Hashtable

c# - Process.Kill() 问题

c# - 带有自己的元组的字典

c# - 为什么 C# 不允许将 typeof 作为默认参数?

c# - 从我的类(class)访问母版页/子页控件

c# - 如何将 C# WCF DataContract 序列化/反序列化到 XML 或从 XML 反序列化

c# - 在 GridView 的每一行中只允许选中一个单选按钮

tsql - T-SQL - 具有默认参数的函数