我想知道怎样才能设计出最好的..
在我的WCF应用程序上,我有一个数据库,我想使用ASP.NET来处理我通过EF与该数据库的所有交互。因此,我在服务上创建了一个实体模型,用于与数据库交互。为了与ASP.NET应用程序交互,我为每个EF模型创建了DTO(我只有3个)和一个转换器类来从EF模型转换为DTO,反之亦然。
顺便说一句..有没有可能避免使用DTO而只是转移EF模型?-我试过了,但没有运气,因为客户端asp.net应用程序不能识别这些模型。
这是一种合适的设计方法,还是另一种方法更好?
提前谢谢。:)
发布于 2011-02-28 03:24:11
当业务逻辑和数据访问逻辑部署在另一台服务器上而不是asp.net前端时,确实可以使用此体系结构。这种架构的原因可能是公司策略、安全性、可伸缩性等,但通常是针对更大的项目。
你说过你有3个"EF模型“。这是否意味着您有3个EDMX文件或3个实体?如果你指的是3个实体,那么你的项目可能非常小,除非你真的必须使用这个架构(直接需求),或者除非你只是在做一些测试项目,否则就没有理由这样做。
如何使用DTO?它只是(或非常接近) 1:1映射到EF实体吗?在这种情况下,您错过了DTO的目的,并且很可能不需要它们。如果您的服务公开CRUD操作,则可以直接使用EF实体(但必须使用POCO或STE)。
此外,如果您只想将EF模型公开为CRUD服务,则应该检查WCF Data Services。
https://stackoverflow.com/questions/5135144
复制相似问题