linq-to-sql – 实体类从LINQ到SQL提供者解耦实现Repository模式.怎么样?
|
我已经看过了Repository模式,我认识到过去使用过的一些想法,使我感觉良好. 然而,现在我想编写一个使用这种模式的应用程序,但我想要从存储库提供程序中删除实体类. 我将创建几个程序集: >“接口”程序集,它将承载包括IRepository接口在内的公共接口 研究LINQ to SQL在实现所有时间方面看起来非常有成效似乎很好,直到我发现生成的类和CustomDataContext类之间的深度依赖关系. 在这种情况下如何使用LINQ to SQL? 解决方法我不知道这是否是你想要的,但你可能想看看Rob Conery的MVC Storefront代码.他使用一个linq提供程序的存储库模式的变体.他将LINQ映射到Sql对象到域对象,然后将域对象从存储库提供程序返回到一个服务层,该层包装提供程序,使得他可以在返回的数据处理业务层之前对其进行一些逻辑.MVC Storefront Webcasts 对我来说,听起来您希望提供商返回DTO,然后您想将DTO映射到存储库/服务层中的域对象.如果是这样,您可以将LINQ to SQL提供程序映射到DTO,将其返回,然后将DTO映射到存储库/服务层中的域对象.这应该是正常的,但它可能会变得乏味,因为你现在将有2个映射图层. 在这种情况下你会有:ProductService,它需要一个IProductRepository.它引发了IProductRepository上的方法来获取您的DTO.然后,将DTO映射到真实的业务对象,并将其返回给调用代码. (编辑:安卓应用网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
- SQL最佳实践 – 好的依靠自动增量字段按顺序排序行?
- 数据库 – Freebase:什么数据转储文件包含“imdb_id”?
- sql-server – 数据库对象的版本控制
- 如何在SQL Server中有效地合并两个层次结构?
- sql – 如何将true / false / unknown映射到-1 / 0 / null而
- SQLSever中的触发器基本语法与作用
- 跳过SQL Server 2005的第一行?
- sql-server – 不可修复的空间索引损坏是否正常?
- sql-server – 如果在SQL Server中存在外键约束,我如何删除
- CentOS 7 中以命令行方式安装 MySQL 5.7.11 for Linux Gene
