Entity framework 为MEF生成接口的EntityFramwork
我正在基于数据库表构建一些构建块 因此,我创建了一个UsersManager和一个ValidationManager,两者都基于EDMX“模板” 我真的很想将这两个组件与MEF松散耦合。但是,因此我需要创建ValidationManager中公开的entityobjects的接口。 有没有一种简单的方法来创建这些接口,这样我仍然可以使用EDMX生成的类 Thanx,Entity framework 为MEF生成接口的EntityFramwork,entity-framework,c#-4.0,interface,mef,edmx,Entity Framework,C# 4.0,Interface,Mef,Edmx,我正在基于数据库表构建一些构建块 因此,我创建了一个UsersManager和一个ValidationManager,两者都基于EDMX“模板” 我真的很想将这两个组件与MEF松散耦合。但是,因此我需要创建ValidationManager中公开的entityobjects的接口。 有没有一种简单的方法来创建这些接口,这样我仍然可以使用EDMX生成的类 Thanx, Paul使用带有产品表的数据库示例,这就是您试图实现的 但仍然使用生成的实体类(使用标准EF生成器或其他某种POCO生成器) 我
Paul使用带有
产品
表的数据库示例,这就是您试图实现的
但仍然使用生成的实体类(使用标准EF生成器或其他某种POCO生成器)
我不确定-正如你提到的MEF,我不认为这是直接相关的
生成的实体类是分部类,允许您扩展生成的类,在本例中,您希望扩展该类以实现接口
假设下面的接口将用于引入抽象层
public interface IEntity {
public bool IsDeleted { get; set; }
}
使用扩展的产品
类创建新的类文件
public partial class Product : IEntity {
public bool IsDeleted {
get {
throw new NotImplementedException();
}
set {
throw new NotImplementedException();
}
}
}
现在,您已经使用部分类自定义代码扩展了生成的实体产品,并且可以通过EF正常使用它
现在,您的UserManager
和ValidationManager
类不再硬引用Product
,而是只引用IEntity
如果我不理解这个问题,请提供更多详细信息,说明您到底想做什么。谢谢您的回答,但我想我没有说清楚:)谢谢您的回答,但我想我没有说清楚:)ValidationManager是一个使用两个部分类Validation和ValidationCode的类,数据库中的两个表。与UserManager相同,UserManager由7个表组成:)在ValidationManager中生成部分类“Validation”。从这个类中,我希望在ValidationManager和UserManager中的单独硬链接库中都有一个接口。。这更有意义吗?还有,我错过了一些。。。。分部类能够“接口”。因此,我重构了Validation和ValidationAction的接口,将接口放在类中:public partial class Validation:EntityObject,IValidation,并将它们转移到一个单独的项目中。。现在它起作用了:D