2

我正在使用实体框架数据库优先工作流程。

我创建了我的模型,并且按照 Julie Lerman 的 Pluralsite 课程的推荐,我已成功地将用于实体/类生成的 .tt 文件移动到一个单独的项目中(我是 EF 新手)

我正在为每个实体类创建部分类,并且我想设置一些默认值。显而易见的答案(这是对类似问题的答案)是在构造函数中执行此操作。问题是我生成的实体已经有一个构造函数。例如:

-- 生成的类 --

 public partial class User
{
    public User()
    {
        this.EmailLogs = new HashSet<EmailLog>();
        this.Listings = new HashSet<Listing>();
        this.Visitors = new HashSet<Visitor>();
    }

-- 推荐方法 --

  public User()
   {
       this.CreatedOn = DateTimeOffset.Now;
       this.IsAdminUser = false;
       this.Token = Guid.NewGuid();
    }

这失败了,因为我不能有 2 个部分构造函数。

我希望在 DotNet 层中设置这些属性(而不是 DB 默认值),因为我希望在保存之前使用新对象时填充它们。

我希望能够对我的模型进行往返编辑,即,如果我向对象添加另一个属性,我希望能够重新编码生成我的实体类。因此,手动编辑实体类并不是一个很好的答案。

当然,我缺少一个明显的解决方案。

4

0 回答 0