我正在使用MEF和EntityFramework 4构建我的工作站代理应用程序。
中的应用是与计算机插件架构(和许多插件在.dll文件的形式)。
上运行的简单的代理每个插件都会查询自己的插件特定表。主程序(或代理)需要将信息传递给插件,并从插件接收信息。
在插件将使用实体框架4.1来检索数据,所以它已经格式化为对象的数据(可能是重物,因为它们都被设置到EF上下文)。另外,我从数据库中拉回来的数据是一系列连接的,所以数据不匹配任何我已经创建了POCO身份/班。
将数据输入/输出插件的最佳方法是什么?考虑到我正在使用MEF将各个部分组合在一起,并且我已经拥有了插件中数据的对象。我应该创建一个新的POCO并将实体数据移入其中,然后随机播放数组吗?我应该创建一个列表吗?我不仅对可以做什么感兴趣,还有什么是最佳实践!
答案 0 :(得分:1)
这是一篇关于Data Transfer Objects的好文章。它触及了你在POCO对象中提出的要点。由于您构建的应用程序具有进一步扩展和自定义的明确意图,我认为POCO对象是可行的方法。否则,任何其他组件将需要依赖于EF,这对于插件开发者来说可能是麻烦的。使用POCO / DTO对象,您可以更好地控制发送的内容以及发送的结构。
插件应该实现(虚拟?)基类或接口。我可能会选择界面,因为 - 再次 - 插件开发人员更容易为其代码添加接口而不是基类。
真的,我并没有说任何新的东西,奥马尔和冒险还没有说过。基本上我说我认为你已经很好地处理了它:)