在实体框架中设置默认值 - 数据库优先



我正在使用实体框架 4.3.1,其中包含数据库中自动生成的实体。

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

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

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

也许如果有人能给我一个例子,那就太好了!

你给出的例子意味着 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;} }
    }
}

在分部类上使用OnCreated

public partial class ENTITY
{    
  partial void OnCreated()
  {
    DESCRIPTION_ = "default string";
  } 
}

最新更新