当前位置:  开发笔记 > 数据库 > 正文

经常更改的数据库的最佳.NET解决方案

如何解决《经常更改的数据库的最佳.NET解决方案》经验,为你挑选了2个好方法。

我目前正在构建一个小型CRUD应用程序.他们的数据库非常混乱,并且在接下来的6个月到一年的时间里会经常变化.你会为我的数据层推荐什么:

1)ORM(如果是,哪一个?)

2)Linq2Sql

3)存储过程

4)参数化查询

我真的需要一个足够动态的解决方案(既快又简单),我可以替换表并经常添加/删除列.

注意:我对ORM没有太多经验(只有一点SubSonic),并且通常倾向于使用存储过程,所以这可能是最佳选择.我很想学习Ling2Sql或NHibernate,如果要么允许我上面描述的情况.



1> lomaxx..:

这里要注意的一件重要事情是,如果数据库模式经常更改,您希望具有某种程度的编译时类型安全性.我发现这是NHibernate的一个问题,因为它使用xml映射文件,所以如果你在数据库模式中改变一些东西,你就不知道直到运行时映射被破坏了.

这也是存储过程的问题.

使用Linq2Sql可以让您在编译时更改模式时知道代码的确切位置.对我而言,如果我正在使用频繁更改的架构,那么它将优先于其他所有内容


流畅的NHibernate可以轻松编写集成测试,检查您的映射是否正确.您可以使用内存数据库来加快速度.
使用linq2sql会对你的孩子施加诅咒.你所有的家人都将死于设计师所造成的可怕的死亡.

2> Jon Galloway..:

我将使用构建提供程序(网站项目)设置来查看SubSonic.这很好用,因为它会在每次构建项目时自动重新生成DAL对象,因此如果数据库以破坏代码的方式更改,则会出现构建错误.

它运行良好,直到数据库模式变得非常复杂并且我们达到了ActiveRecord模式的限制,但只要模式不是非常复杂,它就能很好地工作.架构稳定后,您可以进行切换,以便在需要时只构建DAL.

推荐阅读
pan2502851807
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有