VS错误初学者



我是编码界的新手,正在努力学习。我正在努力理解.dll是如何编写的,它的目的是什么。我对它进行了反编译,并将其作为VS中的程序集打开。我通过查看它的结构学到了一些东西,并解决了重新编译它时出现的大多数错误。但我最终还是被卡住了。这是代码:

public Request_NSBD FormRequest
{
    get =>this._request              
    private set
    {
        this._request = value;
    }     
}

我在第003行中得到错误CS1043、CS1513和CS0161,在第004行得到错误CS1002和CS1513。有人能向我解释为什么我会出现这些错误以及如何修复它们吗?我在网上查了CSxxxx,不明白出了什么问题。如果我听从VS的建议,错误会变得越来越"严重"。我非常感谢你在这方面给我的任何见解。

我是一名机械师,我学习东西的方法是打开它们,看看里面是什么。我发现代码也是如此,也许我错了。

看起来您正试图创建一个属性来获取/设置类型为Request_NSBD的局部变量_request。尝试将您的代码更改为:

public Request_NSBDFormRequest
{
   get { return this._request; }
   set { this._request = value; }
}

正如上面chris所提到的,以某些风格编写的代码利用了新的语言特性,并且可能不会随每个版本一起编译。除非您熟悉某些语言语法,否则最好使用更常见的实现模式。

要声明属性,有很多方法。。。

旧方法(如果你想对你的内部属性进行一些检查,仍然有用):

public Request_NSBD FormRequest
{
    get { return _request; }
    private set { _request = value; }
}

C#的新版本允许您这样声明您的属性:

public Request_NSBD FormRequest { get; private set; }

现在,关于您使用的语法,它是表达式主体和旧式声明的混合体。

如果你想写一个只读属性,你会写这样的东西:

public string MyString
{
    get
    {
        return "My string value";
    }
}

这相当于这个(有一个表达式体):

public string MyString => "My string value";

相关内容

  • 没有找到相关文章

最新更新