2010-12-14 63 views
3

我在为我的下一个项目使用NetTiers进行评估。关于修改NetTiers的建议

问题是: 我的模式中的每个表都有一个AccountId字段。随着对DAL的每个请求,我希望它成为AccountId被传递并用作查询中的过滤器的要求。

如果使用此参数产生了额外的重载,那将是可以接受的。

我怀疑这个功能是不是内置的,所以任何人都可以提供任何建议,从哪里开始修改模板来添加它?

回答

3

修改NetTiers模板并不困难,一旦你知道自己生成的类的迷宫的方式,但它通常很繁琐,而且很容易出错。

我的第一个假设是,您生成的数据库要么只有几个表,要么是非规格化的 - 否则在每个表中都有一个AccountId列是没有意义的。如果是后者且结构无法正常化,则认为基于数据库外键(包括DeepLo​​ads)使用额外的AccountId过滤器来获取所有构建它的导航属性将是一个相当大的改变。

此外,您提到添加包含AccountId的重载将是一个可接受的解决方案。然而,这将保持现有NetTiers重载不需要ACCOUNTID参数任何DAL消费者...

总之,这里的一些地区的总结,你会需要考虑修改:

我一般建议是,虽然NetTiers和CodeSmith的是选择的工具,几年前建设DALS,我不能建议走这条路,这些天。随着微软实体框架和开源NHibernate的发展,你不再需要深入研究数据访问管道层(即使只是在代码生成层面)。

+0

一些优秀的技巧,从哪里开始整个nettiers作为一个整体,而不是具体的我的问题。谢谢 – 2011-04-13 09:34:49