在Microsoft的示例中,他们通过仅提供没有mutator的访问者来隐式定义计算属性:
public string NormalProperty { get; set; }
public string CalculatedProperty
{
get { return "foobar" + NormalProperty; }
}
我还希望在CalculatedProperty中有一个mutator,它会自动修剪" foobar"后缀并将结果分配回NormalProperty。
public string CalculatedProperty
{
get { return "foobar" + NormalProperty; }
set { NormalProperty = value.Substring(6); }
}
问题是,Entity Framework现在将CalculatedProperty视为普通属性,并创建一个名为" CalculatedProperty"的列。在数据库中。
我不想通过使用函数来解决这个问题。可以通过Attributes / Fluent API完成吗?我使用的是EF 6.1。
答案 0 :(得分:0)
可以先在代码中的DataContext中完成
protected override void OnModelCreating(DbModelBuilder modelBuilder)
{
modelBuilder.Entity<Your_Class>().Ignore(x => x.CalculatedProperty);
}