c# – 如何获取Entity Framework类继承基类
发布时间:2020-12-16 01:38:09 所属栏目:百科 来源:网络整理
导读:我有几个类继承自一个包含一些常用实用程序代码的抽象基类.我想转移到EF进行数据访问,但我仍然希望对象继承基类中的公共代码. EF类已经从EntityObject继承,所以我不能让它们继承我的基类.处理这个问题的正确方法是什么? 我的环境是Net 3.5 / C# 解决方法 对
我有几个类继承自一个包含一些常用实用程序代码的抽象基类.我想转移到EF进行数据访问,但我仍然希望对象继承基类中的公共代码. EF类已经从EntityObject继承,所以我不能让它们继承我的基类.处理这个问题的正确方法是什么?
我的环境是Net 3.5 / C# 解决方法
对不起,如果你看到我之前的帖子 – 我错过了你问题中的重要内容.
您可以使用部分类.使您的partial类具有一个内部字段,其中包含您想要的基类实例,并实现所有方法和属性(除非它们已在实体中实现).如果您正在尝试,那么,为了允许使用您的实体类,您可以在基类(或部分实体类)中使用公共静态隐式运算符来允许转换而不会有麻烦. 如果你有一个名为MyBaseClass的抽象基类,你可以这样做: public partial class MyEntityClass { private MyBaseClass _baseClass; private MyBaseClass BaseClass { get { if (_baseClass == null) { _baseClass = new MyBaseClass(); } return _baseClass; } } public string BaseClassString { get { return BaseClass.BaseClassString; } set { BaseClass.BaseClassString = value; } } // etc. public static implicit operator MyBaseClass(MyEntityClass e) { return new MyBaseClass() { Property1 = e.Property1,Property2 = e.Property2 // etc. }; } public static implicit operator MyEntityClass(MyBaseClass b) { return new MyEntityClass() { Property1 = b.Property1,Property2 = b.Property2 // etc. }; } } (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |