日期:2014-05-20  浏览次数:20772 次

关于LINQ和数据库设计的问题
最近碰到一个C/S项目,它的数据表分为  
A01_Users,A02_Users,A03_Users
A01_News,A02_News,A03_News

下划线前面的表示1个工程
如果在系统中添加了工程A03,那么就会在数据库里面多出来很多 A03_开头的表

最近这个项目的某些部分要放到B/S里
我是LINQ TO SQL 做的,如果他们在C/S里添加了工程的话,我在B/S里该如何解决这个问题

难道说重新拖一次表,再在各个相关的类里面添有关于新的工程的方法?这不得累死了啊。他们在C/S里面是用ado.net字符串拼接的

还是说这样的数据库设计根本不合理呢?

------解决方案--------------------
LINQ2SQL也是可以拼接字符串滴
http://www.cnblogs.com/snowdream/archive/2008/07/18/1246308.html

或者动态表名映射:
http://www.cnblogs.com/johnwonder/archive/2010/02/28/1675179.html

不过从你的描述来看 如果表随时有可能增加 库结构时常变动的项目
不建议你使用LINQ