我刚开始使用LinqToSql创建数据访问层.每个人都在谈论很酷的语法,我真的很喜欢Linq.
但是当我看到如果你在LinqContext上拖一些表时你的类如何生成我感到惊讶:那么多代码没人需要?!
所以我看了其他人如何在他的StoreFront演示中使用LinqToSql,例如Rob Connery.
因为我不喜欢生成所有这些代码的方式,所以我手动创建了我的域图层,并使用生成的类作为参考.使用该解决方案我很好,因为我可以使用Linq提供的功能(延迟执行,延迟加载,...),我的域层很容易理解.
你是如何使用LinqToSql的?
创建的类并不像看起来那么重.当然它需要相当多的代码行,但总而言之,它与它提供的功能一样轻巧.
我曾经创建自己的表,但现在我只使用LINQtoSQL DataContext.为什么?创建更简单,功能更好,互操作性更好,它可能比我自己的东西更快(不是在每个方面.通常我自己的东西在一件事情上非常快,但通用的东西在其他一切方面更快).
但最重要的部分是:将新开发人员带入LINQ的东西比让我自己更容易.有教程,示例代码,文档,所有内容,我必须自己为我的代码创建.与使用其他技术的东西相同,如WCF或数据绑定.有很多陷阱需要照顾.
我学会了不要让自己陷入困境,一开始看起来既快又简单,比学习如何使用lib更有趣,但是在经历了几个月之后,这是一个真正的痛苦,通常甚至对我自己.
一段时间后,创建我自己的数据容器的新颖性逐渐消失,我注意到添加功能所带来的痛苦.如果我使用了提供的类,我将免费获得一个功能.
接下来我必须向其他程序员解释我的代码.如果我使用提供的课程,我可以将他指向一些网站来了解这些内容.但是对于我的课程,我不得不自己训练他,这需要很长时间,并且很难让新人参与项目.