c# – 在应用程序层之间共享实体框架模型的最佳方法
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了c# – 在应用程序层之间共享实体框架模型的最佳方法,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含981字,纯文字阅读大概需要2分钟。
内容图文
![c# – 在应用程序层之间共享实体框架模型的最佳方法](/upload/InfoBanner/zyjiaocheng/803/b38b169656504586b896835ea5eaa3d0.jpg)
我想创建一个asp.net应用程序,它有几个层(经典层设计):业务层和表示层.数据层似乎已经过时,因为EF可以完成所有工作.
因此,当我在业务层中创建EF模型时,我无法在表示层中使用实体,因为我无法为显示和验证等添加数据注释(尤其是显示属性通常是表示层的一部分).对于我来说,将所有数据复制到表示层中类似的“viewmodel”类似乎并不是很好.
那么有一种很好的方法可以在业务层中创建对象上下文并为实体创建共享的“契约” – 组件吗?我发现的大多数样本都将所有内容放在一个单独的程序集中,在我看来,这不是更复杂应用程序的最佳方法.
解决方法:
您应该从业务层抽象EF,不要直接使用此类框架.我通常会创建一个通用存储库接口和一个实现接口的通用EF存储库(这是您的数据层). IoC框架将在运行时注入正确的实现.
此外,您正在描述表示层中ViewModel的需求.它们只负责在视图中显示您需要的信息以及基于数据注释的验证.在开始时,它们看起来可能与您的域实体重复,但最终它将为您节省很多麻烦,这绝对是最佳选择.
您的业??务层应该生成域实体,在控制器中将它们映射到ViewModel.您可以使用AutoMapper.
您可以查看this question并回答有关服务/业务层和域/视图模型的更多信息.
内容总结
以上是互联网集市为您收集整理的c# – 在应用程序层之间共享实体框架模型的最佳方法全部内容,希望文章能够帮你解决c# – 在应用程序层之间共享实体框架模型的最佳方法所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。