5

我正在使用 Entity Framework 4.3.1,从数据库中自动生成实体。

由此,有没有办法将默认值设置为?我不想把它放在自动生成的代码中,因为它会被覆盖。

我知道可以使用部分类,所以我尝试了这样的方法,其中生成了实体,而 DESCRIPTION_ 是我想要设置为默认值的属性。

namespace name.Models
{
    public partial class ENTITY
    {
        public string DESCRIPTION_
        {
            set { _DESCRIPTION_ = "default string"; }
        }
    }
}

也许如果有人能给我一个很好的例子!

4

2 回答 2

4

您给出的示例意味着DESCRIPTION只能是“默认字符串”

您可以在构造函数中设置它

namespace name.Models 
{
  public partial class ENTITY
  {
    private string defaultDescription = "some text";
    public ENTITY() {
      DESCRIPTION_ = defaultDescription;
    } 
  }
}

或通过将您的属性切换为具有支持字段的属性

namespace name.Models
{
    public partial class ENTITY
    {
        private string _desc = "some default value"; 
        public virtual string DESCRIPTION_ {get {return _desc} set {_desc = value;} }
    }
}
于 2012-10-02T14:11:14.590 回答
2

OnCreated在部分类上使用:

public partial class ENTITY
{    
  partial void OnCreated()
  {
    DESCRIPTION_ = "default string";
  } 
}
于 2012-10-02T14:10:45.090 回答