F#中的模型域分离和Automapper

时间:2019-07-12 10:01:13

标签: asp.net-web-api f# n-tier-architecture

我是F#的新手,但想开始使用它构建API。

我以前已经构建了C#API。在这些模型中,我们需要在模型之间(位于控制器中),域DTO位于服务中,最后是数据层(如果需要任何持久性)之间的体系结构。

在这些层之间,我们使用自动映射器在各层之间上下映射类型,从而保持清晰的分隔,例如,我们的任何域对象都不能在其中包含任何空值(我们使用“可能” /“选项”)并在我们的服务中满足此要求对象之间的映射。

我看到了使用F#构建API的示例以及许多入门知识,但没有关于架构的好的示例。我还看到人们尝试将Automapper与F#结合使用,但似乎有些shoe脚,至少在我发现的网上示例教程中,您都看不到有人使用它。

我只是想知道人们在做什么。您是否在F#中使用了Automapper之类的东西,是否将模型与域DTO分开?你关心?我是不是在以一种太多的方式想这件事?

我最接近的帮助是https://fsharpforfunandprofit.com/posts/recipe-part3/

1 个答案:

答案 0 :(得分:0)

  

我想知道人们在做什么。您是否将模型与域DTO分开?

这种情况并不常见,但我们希望保留所有手动操作。我们不创建DTO。

如果要传输对象,则可以手动序列化和反序列化,而无需创建其他对象。

DTO通常被用作序列化的辅助,但是您必须做很多工作来编写对象<-> DTO映射,并最终得到缓慢的,基于反射的,未优化的序列化。