对于下面的代码,我添加不带主体的“私有集”的原因是使其在此类之外不可变。 resharper一直告诉我““value”参数未使用”,请问这是什么意思?
public string ErrorCode
{
get
{
if (!this.request.Completed)
{
return "Incomplete";
}
return this.request.Error.ToString();
}
private set
{
}
}
如果您要使用 setter,那么您还需要使用
value
关键字。如果您不需要设置器,请将 ErrorCode
属性设置为只读,然后您可以删除 private-set
子句。否则没有办法避免这种情况。
public string ErrorCode
{
get
{
if (!this.request.Completed)
{
return "Incomplete";
}
return this.request.Error.ToString();
}
private set
{
_globalVar = value;
}
}
如果你实现了 get,你就不能拥有自动的 setter。你有几个选择:
1.将setter全部移除,这样您将获得唯一的财产。您可以直接从类级别操作私有字段。不推荐
在setter中提供最少的实现:_yourPrivateField = value; 虽然懒但是会做。
为 setter 提供一些验证——始终是首选。
sdawrwssxkmksadmiajsifjidfjeiskifjiesjrifjemifneacimsjfimeaaaaaaaajfkishedfaehuwwwwwwwwwwwwwwwfnajenfuekhnrafieazksnfeahnfsjhrie