我不确定这是否是您的意思,但是您可以将[NotMapped]
注释添加到您只想在代码中使用而不是存储在数据库中的 POCO 属性中;
public class MyPoco {
public Guid Id { get; set; }
public string MyName { get; set; }
[NotMapped]
public string ThisObjectCachedAsJson { get; set; }
}
一个更完整的 Json 缓存需求示例,但偏离了 POCO 领域;
public class MyPoco {
private Guid _id;
private string _myName;
private string _jsonCache;
public Guid Id {
get { return _id; }
set { _jsonCache = null; _id = value; }
}
public string MyName {
get { return _myName; }
set { _jsonCache = null; _myName = value; }
}
[NotMapped]
public string ThisObjectCachedAsJson {
get {
if(_jsonCache == null)
_jsonCache = <generate json>;
return _jsonCache;
}
}
}
您应该能够使用 getter 创建一个基类,然后在其中调用一个方法将 _jsonCache 设置为 null。这会让你的课程更干净一些。