Linq to sql 是否有一个具有双向序列化属性的简单Linq到SQL生成器?

Linq to sql 是否有一个具有双向序列化属性的简单Linq到SQL生成器?,linq-to-sql,serialization,code-generation,Linq To Sql,Serialization,Code Generation,我试图找到一种方法来生成具有双向序列化属性的Linq到SQL类。基本上,我希望在每个关联属性上都有一个DataMember标记(具有适当的顺序),而不仅仅是类作为主键的属性(如VisualStudio生成器和SQL Metal do)。我查看了MyGeneration,但没有找到任何适合我的。我认为T4工具箱将是我的解决方案,修改它以添加属性将非常容易,但我在WCF服务的调用端遇到了一个异常,我没有得到任何回复。我打算安装CodeSmith并使用PLINQO,但我更喜欢免费的 我几乎要写我自己的

我试图找到一种方法来生成具有双向序列化属性的Linq到SQL类。基本上,我希望在每个关联属性上都有一个DataMember标记(具有适当的顺序),而不仅仅是类作为主键的属性(如VisualStudio生成器和SQL Metal do)。我查看了MyGeneration,但没有找到任何适合我的。我认为T4工具箱将是我的解决方案,修改它以添加属性将非常容易,但我在WCF服务的调用端遇到了一个异常,我没有得到任何回复。我打算安装CodeSmith并使用PLINQO,但我更喜欢免费的


我几乎要写我自己的T4生成器了,但在我写之前,我希望先找到一个预构建的解决方案来解决这个相当简单的问题。

我最终为我们的L2S类编写了自己的代码生成器。我们实际上生成了两组类。一种是供客户端应用程序使用的“轻量级”实体集。这些类没有L2S管道。但它们具有顺序正确的完整datamember属性。然后我们有了L2S实体,这些实体严格用于后端。这一切都很顺利

使用PLINQO时要小心。我已经广泛地研究了那个产品。事实上,我的大部分代码生成器都基于PLINQO生成的代码。然而,他们在如何实现多对多关系方面有一个“重大缺陷”(他们的话)

您可能还想看看名为“Reegenerator”的产品


Randy

我最终为L2S类编写了自己的代码生成器。我们实际上生成了两组类。一种是供客户端应用程序使用的“轻量级”实体集。这些类没有L2S管道。但它们具有顺序正确的完整datamember属性。然后我们有了L2S实体,这些实体严格用于后端。这一切都很顺利

使用PLINQO时要小心。我已经广泛地研究了那个产品。事实上,我的大部分代码生成器都基于PLINQO生成的代码。然而,他们在如何实现多对多关系方面有一个“重大缺陷”(他们的话)

您可能还想看看名为“Reegenerator”的产品


兰迪原来是解决我问题的办法。我刚刚辞职开始研究我自己的发电机,突然发现了这一点。它有一个双向序列化选项,效果非常好,它包含了一个关于如何开始的很棒的视频示例。

结果是解决了我的问题。我刚刚辞职开始研究我自己的发电机,突然发现了这一点。它有一个双向序列化选项,效果非常好,其中包含了一个关于如何开始的精彩视频示例。

我刚刚找到了这个:,它看起来正是我所需要的,但我遇到了一些问题,如下所述:。我想如果我能解决这个问题,我会很顺利的。我刚刚找到了这个:,这看起来正是我所需要的,但我遇到了一些问题,如下所述:。我想如果我能解决这个问题,我会很顺利的。你提到的主要缺陷不是PLINQO的多对多实现。这与Microsoft在特定领域的封闭源代码Linq to SQL实现有关,PLINQO在这些领域无法实现高级功能,如未来的多对多查询,因为无法访问所需的内部Linq to SQL信息。@Blake-问题确实出在PLINQO的M:M实现上。他们明确地告诉我,他们的M:M实现中有一个“严重的”设计缺陷,他们不能给我任何可能修复的日期。生成的代码有缺陷。你不能把这归咎于微软的“封闭系统”。如果我们不能修改运行时处理多对多的方式,那么在这种情况下我们就无能为力了。如果你有一个适合多对多的工作环境,我们很乐意听到。另外,如果您能指出哪些特定生成的代码有缺陷,我们很乐意修复它。您提到的主要缺陷不在PLINQO的多对多实现中。这与Microsoft在特定领域的封闭源代码Linq to SQL实现有关,PLINQO在这些领域无法实现高级功能,如未来的多对多查询,因为无法访问所需的内部Linq to SQL信息。@Blake-问题确实出在PLINQO的M:M实现上。他们明确地告诉我,他们的M:M实现中有一个“严重的”设计缺陷,他们不能给我任何可能修复的日期。生成的代码有缺陷。你不能把这归咎于微软的“封闭系统”。如果我们不能修改运行时处理多对多的方式,那么在这种情况下我们就无能为力了。如果你有一个适合多对多的工作环境,我们很乐意听到。另外,如果您能指出哪些特定生成的代码是错误的,我们很乐意修复它。