我参与了一个分层应用程序的开发,该应用程序使用与Web服务器分离的LINQ2SQL和WCF上的NET.TCP绑定。
我的问题是:
答案 0 :(得分:1)
1)专注于正确规范化的数据库设计。我会说,当你被迫在代码与数据库设计中进行设计权衡时,如果性能是你的目标,那么在对象设计而不是数据库设计中进行权衡。了解您无法使用Linq to SQL进行正确的超类型/子类型数据库设计(我告诉您需要使用EF)。
2)取决于你的意思。如果您正在询问如何通过网络序列化匿名类,那么简单的答案就是:“你不能,所以不要尝试”。如果要在线上放置对象列表,只需在IEnumerable集合上使用ToArray()扩展方法,即可通过线路传送业务对象的数组。
答案 1 :(得分:0)
除非编译查询,否则Linq to SQL非常慢。否则,您的应用程序将受CPU限制,因为大部分时间将表达式树转换为SQL。
如果您使用编译查询,我们正在谈论10倍的性能提升。试试吧:))