Asp.net web api F中的模型域分离与自动映射#

Asp.net web api F中的模型域分离与自动映射#,asp.net-web-api,f#,n-tier-architecture,Asp.net Web Api,F#,N Tier Architecture,我对F#还不熟悉,但我想用它开始构建API 我以前构建过C#API。在这些模型中,我们在模型(在控制器中)之间分层体系结构,在服务中分层域DTO,如果需要持久性,最后在数据层分层 在这些层之间,我们使用Automapper在层上下映射类型,保持干净的分隔,例如,我们的域对象中没有一个可以有任何空值(我们使用maybe/选项),并在对象之间的映射中满足这一点 我看到过使用F#构建API的例子和很多入门的例子,但没有关于架构的好例子。我也见过有人尝试将Automapper与F#结合使用,但它似乎是被

我对F#还不熟悉,但我想用它开始构建API

我以前构建过C#API。在这些模型中,我们在模型(在控制器中)之间分层体系结构,在服务中分层域DTO,如果需要持久性,最后在数据层分层

在这些层之间,我们使用Automapper在层上下映射类型,保持干净的分隔,例如,我们的域对象中没有一个可以有任何空值(我们使用maybe/选项),并在对象之间的映射中满足这一点

我看到过使用F#构建API的例子和很多入门的例子,但没有关于架构的好例子。我也见过有人尝试将Automapper与F#结合使用,但它似乎是被硬塞进了网站,你在网上的任何示例教程中都看不到有人使用它,至少我发现了这一点

我只是想知道人们做什么。您是否在F#中使用了Automapper之类的工具,您的模型和域DTO之间是否保持了分离?你在乎吗?我是不是用一种面向对象的方式来思考这个问题

我得到的最接近于任何帮助的是

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

这并不常见,但我们更喜欢手动操作。我们不创建DTO

如果我们想传输对象,我们可以在不创建其他对象的情况下手动序列化和反序列化

DTO通常被用作序列化的辅助工具,但随后您必须做同样多的工作来编写对象DTO映射,并最终实现缓慢、基于反射、未优化的序列化

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

这并不常见,但我们更喜欢手动操作。我们不创建DTO

如果我们想传输对象,我们可以在不创建其他对象的情况下手动序列化和反序列化


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

征求非现场资源的意见或建议显然与SO无关,因为这往往会导致讨论,而讨论的格式与SO的格式不太相符。请看并考虑在论坛或聊天中发布问题。我最近读了Scott Wlaschin(推特)的一篇Twitter文章,他推荐这个库作为DDD的真实世界例子:<代码>。这是一个“真实世界”的示例应用程序,完全是用F编写的。我们的目标是为构建应用程序创建一个最佳实践,或者至少提供一个合理的手册来设计一个应用程序。我自己还没有看过它,但我相信Scott的建议,我认为这可能会给你带来灵感。征求对非现场资源的意见或建议显然是离题的,因为这往往会导致讨论,而讨论的形式与SO的格式不太相符。请看并考虑在论坛或聊天中发布问题。我最近读了Scott Wlaschin(推特)的一篇Twitter文章,他推荐这个库作为DDD的真实世界例子:<代码>。这是一个“真实世界”的示例应用程序,完全是用F编写的。我们的目标是创建一个构建应用程序的最佳实践,或者至少提供一个合理的手册来设计一个应用程序。我自己没有看过,但我相信Scott的建议,我认为这可以给您带来灵感。