2011-03-09 62 views
3

我在玩最新的实体框架,如果可能的话,我想将生成的类分成每个类1个文件。实体框架 - 单独的类文件

我也希望能够在分裂后重新生成这些文件。

虽然这个问题提出了这个问题,但这个问题已经过时了,接受的答案是“也许在将来”。 Split EDMX for Entity Framework - Breakout object layer into separate files - possible?

可以做到这一点吗?如果是这样,我该如何去做这件事?

感谢

+0

我相信有T4模板可以做到这一点,可能有多个变种,但我最近没看过。 – 2011-03-09 08:43:48

+0

你是对的,它与此捆绑(http://visualstudiogallery.msdn.microsoft.com/23df0450-5677-4926-96cc-173d02752313)。似乎工作正常。 – Russell 2011-03-09 20:13:25

回答

2

使用EFv4和T4模板(用于实体对象或POCO)。它将为每个创建的实体创建单独的文件。我不知道为什么你想要它。它是生成的代码,不得手动修改,因为在下次再生期间修改将会丢失。

打破EDMX insto单独的文件是某种可能性,但很难 - 这是手动工作。检查这些文章(part 1part 2)。这是处理大型模型的方法。

+0

是的,我更喜欢T4模板方法我认为尝试和分割EDMX文件是不明智的 - 这可能很难维护。感谢您的链接! – Russell 2011-03-09 10:58:58

+1

我发现了一个来自MSDN的链接(http://visualstudiogallery.msdn.microsoft.com/23df0450-5677-4926-96cc-173d02752313),它是一个POCO实体生成器。谢谢:) – Russell 2011-03-09 20:12:52

+0

上面的链接实际上是一个T4模板。 – Russell 2011-03-09 20:26:21

-5

忘记一代废话,与最新的EF启动和使用代码优先的方法。然后您可以完全控制POCO。 EF仍然有点不足,但代码优先的方法将允许您按照自己的喜好创建类,然后将它们链接到ORM位。如果你不想写你自己的课程,我知道你无法实现你的愿望。

+3

“代码优先”方法不是我必须做的选择,因为我首先使用数据库设计方法论的一部分。我并不以自己的技术战略为基础,但他们将如何为我的项目增加价值。 – Russell 2011-03-09 05:18:26

+0

每个文件都可以向Microsoft请求单个类的请求,但由于下一次重新发布已经设置了功能,因此不会出现相当长的一段时间。他们会评估它是否足够大,以适应80%的需求,如果是的话。另一种选择是第三方工具或首先编码。 – 2011-03-09 18:40:02

+0

在VS图库(请参阅上面的链接)中,Microsoft已经发布了执行此操作的功能。虽然它并未与VS 2010一起默认捆绑在一起。 – Russell 2011-03-16 23:44:40