ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

继承还是不继承?想要一些专业意见

2019-10-30 17:07:48  阅读:241  来源: 互联网

标签:oop inheritance code-first asp-net c


我正在设计一个使用许多常见功能的C#ASP.Net Web应用程序,正确的处理方式似乎是通过继承.我计划创建一个基类(Person),并在其他类(如Employee和Vendor)中继承它,然后依次继承Manager和Manager等Employee.这样,我不必定义通用属性,例如FirstName,LastName,每个电话号码等.

问题的第二部分是:如果我使用继承并使用Entity Framework的CodeFirst实体,他们会理解继承吗?数据将如何存储在表中?每个表都会有一个FirstName和LastName列,还是EF足够聪明以使它们成为公用表?

我真的希望有人是真正的面向对象的程序员可以帮助我解决这个问题.我已经获得了很多令人困惑的信息,我需要在EF项目方面具有实际经验的人员给我一些指导.我了解继承权吗?如果没有,我怎么了?任何帮助表示赞赏.

谢谢,

伯特

解决方法:

这不是一个简单的问题,但是在大多数情况下,最好选择组合而不是继承.您不应该仅仅因为计算器具有显示和键盘属性而从计算器派生自动提款机.太荒谬了
但是有时候继承是有意义的.问问自己,这些课是否应该有“是”关系?如我所见,最好使Vendor和Employee成为独立的类,并且都具有Person属性.并从员工派生经理.
但是,保持继承的深度尽可能少.深入的层次结构很难调试和理解,尤其是在有许多方法覆盖的情况下.
有关该主题的更多灵感,请查看Chad Myers blogpost.

标签:oop,inheritance,code-first,asp-net,c
来源: https://codeday.me/bug/20191030/1969309.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有