可以将ObjectIds用于MongoDB或Guids for Entity Framework的POCO实体

时间:2013-12-21 05:32:51

标签: c# entity-framework mongodb domain-model

我非常喜欢保留原始域模型的概念,您不需要引用任何第三方DLL。我希望能够设计一个域模型,您可以使用实体框架或mongodb中的流畅API来定义域程序集之外的映射。我还希望能够在实体ID时使用Guid for Entity Framework和ObjectIds for MongoDB。

问题在于,这四种数据类型中没有一种是理想的:

public Guid Id { get; set; }  // can't use ObjectIds for mongo
public ObjectId Id { get; set; } // not compatible with entity framework
public object { get; set; } // not compatible with entity framework
public string { get; set; } // EF has problems wiring this up to a Guid column

有没有人知道如何定义一些可以在MongoDB中使用EF和ObjectIds中的Guid的原始POCO?我希望能够在两种持久性技术之间进行切换,而无需对我的域模型进行更改。

如果我可以在我的POCO中使用通用的东西,并在每个FluentAPI中定义数据类型,这将是完美的,但也证明具有挑战性。

0 个答案:

没有答案