当前位置:编程学习 > C#/ASP.NET >>

请教一个实体问题

记得看到一个大牛的签名,具体忘了谁了, 大概意思是, 如果不是必须被要求, 就不要用实体。

没理解什么意思

是指的Entity?

还是其它, 为什么? --------------------编程问答-------------------- 关注  --------------------编程问答-------------------- 网络上,很多人把描述数据的对象叫做实体,比如:
public class UserInfo{UserId,UserName,UserCode}
当User作为特定领域描述的时候,这样做是合理的设计,
而User作为客户的业务领域描述的时候,这样做就不能适应变化,
因为那些数据特征是变化不定的,
同一个领域的不同客户不同,同一个客户在不同的阶段也会变化,

实际上,entity的原意:
The existence of something considered apart from its properties
与属性区别的本质存在

比如:会计实体,商业实体,纳税人,法人,
这些都是从业务领域的角度划分对象,而不是从属性上区分
--------------------编程问答-------------------- 我是觉得,从代码实现来看,实体类很有必要,操作灵活。 --------------------编程问答-------------------- 用习惯了,如果没有实体,都不知道该怎么做 --------------------编程问答-------------------- 看需求来着,如果要操作大量表的字段时可以用实体.操作单一的的数据用实体也是个麻烦的事. --------------------编程问答-------------------- 多数初学者和一些刚转向OOP+ORM的死脑筋总是粗浅地认为实体就是数据库的表...这经常导致滥用实体以及基于数据库的反向“设计”... --------------------编程问答-------------------- --------------------编程问答-------------------- 那个牛好像是小学毕业的 --------------------编程问答-------------------- 实体是数据的载体,像有些实体类都没用到它,可以不写啊!反正就是根据需要来写嘛! --------------------编程问答-------------------- 一般不用的较少吧~ --------------------编程问答-------------------- 我个人的理解:
没有Entity和LINQ之前,N层应用最大的问题,就是在各层之间没有一致的数据结构和统一的查询接口。Entity的出现,就解决了各层间一致的数据形式表达的问题。而LINQ的出现,则解决了查询接口统一的问题。

Entity和业务对象不能完全划上等号,它只是数据的载体。Entity+业务逻辑才是完整的业务领域的实体。

--------------------编程问答-------------------- 还是不太理解, 被封装好的字段组成的类, 算是实体吗?就算三层里的model层? --------------------编程问答-------------------- 学习。。。。 --------------------编程问答-------------------- 等待`~
补充:.NET技术 ,  ASP.NET
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,