简单的API数据访问

本文关键字:访问 数据 API 简单 | 更新日期: 2023-09-27 18:25:15

我们希望创建一个API,它将包装我们的模型和存储库之间的所有内部交互,并提供一种简单的方法来添加和更新系统中的实体。

我正在沿着这个API的消费者的路线看,以便能够去:

SystemOder order = SomeClass.GetSystemOrderById("...");
order.amount = 200;
order.InvoiceAddress[0].StreetName = "123 Fake Street";
order.Save();

现在,在幕后,我们仍然是一个从模型到存储库的体系结构,但对于编写纯业务逻辑来说,这将是最重要的,并对最终消费者隐藏它。这种建筑有什么像样的模式吗?

只是为了澄清,我们显然不想将Save()方法烘焙到或核心域模型或类似的东西中,我们只想有一个好的API来去掉不必要的代码解析集合和调用存储库等。

简单的API数据访问

听起来您看到的是类似于存储库模式的东西。(你在问题中提到了存储库,但我认为你用这个词来代替数据存储?)

引用马丁·福勒的描述。

使用访问域对象的类似集合的接口在域和数据映射层之间进行中介。

更多信息可以在这里找到

我将推出我自己的facade模式,它将封装对象模型和Save()Delete的持久性机制等,同时仍然保持模型/DAL的良好分离。这正是mixin非常有用的类型。。。哦,好吧。