代码之家  ›  专栏  ›  技术社区  ›  Jalpesh Vadgama

Linq to SQL与T4模板

  •  0
  • Jalpesh Vadgama  · 技术社区  · 14 年前

    我正在为我的项目使用linq-to-sql,但是我听说了t4模板代码生成器?t4模板是否优于linq to sql数据上下文?

    4 回复  |  直到 14 年前
        1
  •  2
  •   Steven    14 年前

    你把两件事混在一起了。linq to sql是一个O/RM工具,就像nhibernate、实体框架、llblgen和其他工具一样。t4是一个代码生成器工具。它们不是互相排斥的。

    有用于Linq to SQL的T4模板,允许您生成Linq to SQL实体和 DataContext 与linq-to-sql代码生成器不同。使用Linq to SQL而不使用 数据上下文 然而,这是不可能的。当你不使用 数据上下文 ,您没有使用Linq to SQL。

    使用T4模板生成实体和 数据上下文 但是,这是有益的。您将看到特定模板的好处,并决定它是否对您有用。例如 L2ST4 codeplex上的模板项目与L2S本身生成的代码非常相似,但允许您根据自己的需要更改模板。

        2
  •  2
  •   tdupont    14 年前

    如果您喜欢LinqToSQL,那么我强烈建议您看看Plinqo。plinqo是一个开放源代码(基于模板,如t4)的ORM,它不仅生成linq to sql实体,还为框架添加了许多修复和增强功能。

    是的,plinqo需要codesmith生成器,但是有一个plinqo促销活动,你只需写一篇关于plinqo的博客或tweet,你就可以免费获得codesmith的副本!

    检查一下 http://www.plinqo.com

    享受!-Tom Dupont(PLINQO开发团队成员)

        3
  •  1
  •   marc_s Anurag    14 年前

    这不是一个“linq to sql”或“t4”的问题,真的-这些是完全不同的事情。

    t4生成代码或任何类型的文本文件,真的。这是一个 代码生成 技术。

    linq to sql是一个 ORM-对象关系映射器 -将SQL Server表映射到.NET域对象-完全不同。

    事实上,甚至有一组T4模板来生成LINQ to SQL实体和数据上下文类。- check it out on Codeplex -好东西!

        4
  •  0
  •   AbstractCode    14 年前

    t4是一个文本生成系统。使用它编写数据访问可能是可能的,但不推荐。L2S数据上下文不能真正被认为是好的或坏的,因为它们没有真正的共享目的。

    我建议,如果L2S限制了您,那么您需要考虑替代ORM。有很多选择。看看nhibernate、实体框架或llblgen pro。