2010-02-26 97 views
0

我正在用Castle ActiveRecord构建一个新项目,并且有一些技术问题。可以参考吗?

我建立了我的项目工作区并添加了5个项目。

  • 视图模型的接口和应用程序逻辑
  • 为基本模型类
  • 测试单元测试
  • 客户我的WPF客户端
  • 数据模式为我的数据源

然后我说在型号视图模型数据项目Castle.ActiveRecord一些参考。我想我的项目中不应该有这么多的ActiveRecord引用。通常在数据项目中,但模型类有它的装饰器来让AR工作。如果在ModelView中没有对AR的引用,那么当我将我的接口定义为dao时,会出现错误,在我的ModelView中没有对AR的引用。

它主要是一个设计问题,而不是一个功能性的东西。当我以后决定使用另一个数据源时,是否会创建一些我不会拥有的依赖项?

可以在任何地方添加对AR的引用,或者如何以其他方式解决此问题?

感谢鲍里斯

回答

1

ActiveRecord的应该比NHibernate的更具侵入性的,因为它不使用纯波苏斯。如果你真的想避免这些引用,使用NHibernate代替。

无论如何,恕我直言,你有太多的项目在那里。 ViewModel项目中的应用程序逻辑听起来不对。请参阅this article以了解保持项目数量的一些基本原理。

+0

感谢您的回答和有用的文章。 – Booser 2010-02-26 18:19:03

+0

我认为我这样做是为了让我把完整的核心**数据,模型,视图模型**放到一个单独的程序集中的程序集客户端,因为它应该非常灵活以便拥有一个web界面,并最终与该单元进行组装试验。 – Booser 2010-03-01 11:51:15

相关问题