【发布时间】:2018-05-30 08:42:06
【问题描述】:
有一个典型的实体类
public class MyTable {
public Guid Id {get;set;}
public string Name {get;set;}
}
EF 生成如下内容:
CreateTable(
"dbo.MyTable",
c => new
{
Id = c.Guid(nullable: false),
Name = c.String(nullable: false, maxLength: 128),
})
.PrimaryKey(t => t.Id)
我想从接口IMyInterface继承我的一些实体类:
public interface IMyEnterface {}
然后我想覆盖默认生成,以便迁移任何实现的类 IMyInterface 自动看起来像这样:
CreateTable(
"dbo.MyTable",
c => new
{
Id = c.Guid(nullable: false),
Name = c.String(nullable: false, maxLength: 128),
})
.PrimaryKey(t => t.Id)
Sql(@"EXEC sys.sp_addextendedproperty bla-bla-bla");
EF 6.2 中是否有任何扩展点允许这样做?
【问题讨论】:
-
您可以编写自己的迁移操作。尽管我不知道您是否会根据界面自动获得它,但您也许可以利用它来使自己至少更容易一些。请参阅此处的两个示例。 romiller.com/tag/migrationoperation(查看它们,您也许可以添加一些反射来检测 Up 方法中的接口)
-
@pinkfloydx33 您应该将其发布为答案!
-
@MichalCiechan 如果我对此有足够的了解,我会的。在单击另一个 SO 评论中的链接后,我只是偶然在周末阅读了这些文章。我对 EF 几乎一无所知
标签: c# sql .net entity-framework entity-framework-6