当我遇到一个问题时,我正在经历LINQ to SQL和实体框架之间的区别 “LINQ to SQL是一个对象关系映射(ORM)框架,允许将Microsoft SQL Server数据库直接1-1映射到.NET类”
任何人都可以向我解释“将Microsoft SQL Server数据库直接映射到.NET类”的含义是什么
答案 0 :(得分:1)
架构中的每个表和数据库都将由ORM中的.Net类表示。
答案 1 :(得分:0)
这不一定是一个全面的答案,但它应该澄清最常见的情况。
如果用户和组之间存在多对多的关系,LinqToSql将创建3个类:User,UserToGroup,Group。实体框架将创建2个类:User,Group。
对于大多数人来说,在代码模型中公开一个UserToGroup类(本质上是一个解析多对多关系的关系数据库构造)是很尴尬的。代码从用户导航到用户所在的组是更自然的,然后必须在一个额外的,无意义的类中导航。
这通常被视为LinqToSql的“限制”。我想不出另外一个带有这个“功能”的.NET ORM,我所知道的每一个都支持实体框架。