gpt4 book ai didi

mongodb - 使用 MongoDB 进行 DDD

转载 作者:行者123 更新时间:2023-12-04 02:20:00 25 4
gpt4 key购买 nike

我不敢相信我没有找到关于它的好文章。所以这可能是一个被问过 1000 次的问题。

我正在编写一个示例,它由 Nancy MVC 以及服务层、核心层和 DAL 组成。 DAL 使用 MongoDB 的地方。我想要实现的是将 MongoDB 与 Core 分开。在我阅读有关 mongoDB 的任何示例中,我看到如下内容:

public class Customer
{
public ObjectId Id{get;set;}
public string Name { get; set; }
public string Address { get; set; }
IEnumerable<string> Telephones { get; set; }
[BsonElement("PublicWebPage")]
public WebPage PublicPage { get; set; }
}

根据我的理解,这不是很好,因为我需要将 MongoDB 驱动程序安装到我的核心中。另一方面,我可以尝试将这个模型放入 DAL 并在 Core 中编写几乎相同的模型,并在一些映射器的帮助下将一个映射到另一个,这意味着它将是两个重复的对象。

我试图找到的方法可能会复制 EF Fluent API 方法或任何不同的方法,这可以帮助我保持模型的清洁。

最佳答案

在 MongoDB 中可以使用属性映射的所有内容也可以通过编程方式完成。避免 ObjectId 将是唯一的其他必要更改。请参阅此处的文档:http://mongodb.github.io/mongo-csharp-driver/2.0/reference/bson/mapping/

另外,出于不同的目的,拥有两个看起来几乎相同的模型并没有错。根据您的应用程序,这可能是防止每一层的职责干扰另一层的最佳方式。

关于mongodb - 使用 MongoDB 进行 DDD,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31229759/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com