我收到以下消息:
警告:字段永远不会分配给,并且始终具有其默认值 null。
我的代码看起来像(它被简化了,所以没用):
public class MyEntity
{
// ...
public string MyProp { get; set; }
}
public class MyClass
{
string dbMyProp;
public string MyProp { get { return dbMyProp.Replace("a", "b"); } }
public static readonly Expression<Func<MyEntity, MyClass>> FromMyEntity = e => new MyClass
{
dbMyProp = e.MyProp // ...
};
}
我认为这个消息是不正确的。
它是 C# 编译器中的错误还是我错过了什么?
更新该字段是dbMyProp
。它已简化,但仍会产生此警告。
UPDATE2以下代码不会产生这样的警告:
public class MyClass2
{
string dbMyProp;
public string MyProp { get { return dbMyProp.Replace("a", "b"); } }
public static MyClass2 FromMyEntity(MyEntity e)
{
return new MyClass2
{
dbMyProp = e.MyProp // ...
};
}
}