c# – 使用DTO时的PATCH
我搜索了正确的方法来处理它,并看到我应该使用jsonPatch.问题是我通过我的API暴露了DTO,如果我使用jsonPatch:
public AccountDto Patch(int id,[FromBody]JsonPatchDocument<AccountDto> patch)
然后我需要在DTO上应用补丁,我不能在模型实体上应用它,而不创建新的实体.
我也读过Odata.Delta,但它仍然不适用于asp.net核心,而且 – 我不认为它有一个内置的解决方案来处理dto(我发现this example可以帮助当核心的Odata将是提供)
所以,现在 – 我应该使用POST并在查询中发送带有已更改属性列表的DTO(我看到here),或者 – 有更优雅的解决方案吗?
谢谢!
解决方法
CreateMap<JsonPatchDocument<AccountDTO>,JsonPatchDocument<Account>>(); CreateMap<Operation<AccountDTO>,Operation<Account>>();
它像魅力一样工作:)
c# – 使用DTO时的PATCH的更多相关文章
-
PHP中的数据传输对象,许多具有相同上下文名称的类
我刚才发现有这种DTO模式.我怀疑是否它们很有用.我的意思是,我应该将所有域对象映射到相应的DTO对象并将它们分配给查看域对象本身吗?
-
POCO,DTO,DLL和贫血域模型
)),并由MartinFowler在07年由贫血领域模型出现。通过缺乏理解,我想我已经创造出了这些贫血域模型之一。所以通常我会这样创建一个dto:并将其传递给bll层,如下所示:这又反过来执行一些逻辑,并将其传递给dal层,如下所示:从我的理解,要使我的dto进入POCO,我需要使业务逻辑和行为(方法)成为对象的一部分。实现这一点的POCO方式是以这种方式设计你的界面:这是更可发现的,因为开发者知道在哪里寻找飞机飞行。
-
java – 创建新的实例类引用
我有一个这样的枚举:所有这些dto类都扩展了相同的抽象类:这将是TestADto的示例Dto实现:是否有可能在枚举引用类中创建这些的具体实例,而不需要知道它具体是什么?让我说在一个函数中的某个点,即时通讯具有Enum_A.现在我想创建一个dto实例.对此最好的方法或模式是什么?我想要达到的一切是将dto名称分配给枚举,以便稍后在某些特定点创建它.但如果可能的话,不要创造巨大的条件……
-
java – 在创建,更新和获取休息端点中相同/不同的DTO对象?
考虑使用UserDTO类和UserController公开端点来创建,更新和获取用户.在UserDTO类中具有id属性对于创建和更新没有意义.如果我使用swagger或其他自动生成的api文档,那么它会显示id可以在createendpoint中传递.但系统不使用它,因为ID是在内部生成的.如果我看看get那么可能我可以摆脱id属性,但它肯定是在列表用户端点.我想在get/list端点返回内部用户域对象.这样我就可以从UserDTO类中删除id属性.我可以为此采用更好的选择吗?
-
java – Spring MVC:服务层应该返回特定于DTO的操作吗?
在我的SpringMVC应用程序中,我在表示层中使用DTO,以便将域模型封装在服务层中.DTO被用作弹簧形式的背衬物体.因此我的服务看起来像这样:服务层将翻译DTO–>域对象并完成剩下的工作.现在我的问题是,当我想从服务中检索DTO来执行更新或显示我似乎无法找到更好的方法来执行它然后有多个方法进行查找返回不同的DTO类似...但是对于这种方法有些不对劲.也许服务不应该返回像EditUserRequ
-
c# – 如果在Base DTO映射中配置了ExplicitExpansion,Automapper 5.2将忽略它
)崩溃有关.在下面的第一个单元测试中演示了崩溃堆栈跟踪.我会在另一个问题中询问它,或者更确切地说是在bug跟踪器中创建一个问题,因为崩溃肯定是一个bug.UnitTest2.cs–修复了IvanStoev的回答UPD2.上面更新的问题肯定无法在外面修复,请参阅接受的答案下的评论.这是AutoMapper本身的问题.如果您迫不及待地想要修复更新的问题,可以使用以下简单差异来制作AutoMapper补丁:https://github.com/moudrick/AutoMapper/commit/6500542
-
c# – 使用DTO时的PATCH
我正在研究asp.net核心webAPi和EF核心,并希望实现“更新”操作.我搜索了正确的方法来处理它,并看到我应该使用jsonPatch.问题是我通过我的API暴露了DTO,如果我使用jsonPatch:然后我需要在DTO上应用补丁,我不能在模型实体上应用它,而不创建新的实体.我也读过Odata.Delta,但它仍然不适用于asp.net核心,而且–我不认为它有一个内置的解决方案来处理dto所以,现在–我应该使用POST并在查询中发送带有已更改属性列表的DTO,或者–有更优雅的解决方案吗?
-
c# – DTO.属性还是字段?
我需要创建一些DTO类来跨WCF传输业务对象.由于这些只是没有功能的数据包,有什么理由我不能只使用字段,还是有一些很好的理由将它们作为属性正确地公开?
-
.net – 跟踪复杂对象图中的变化
我开始考虑在断开的应用程序中跟踪复杂对象图中的变化.我已经找到了几个解决方案,但是我想知道是否有最佳实践或者使用什么解决方案,为什么?
-
java – DTO模式是否被弃用?
在完整的JavaEE应用程序集群中,DTO模式仍然是有效的选项?如果没有,那么DTO模式是不是逐渐消失,不应该在新的应用程序中使用?.>CoreJ2EEPatterns–TransferObject编辑2:解释了MartinFowler解释使用DTO设计的主要原因的另一个信息来源>LocalDTO结论:DTO不是一种反模式.只有当您需要将数据从一个子系统传递到另一个子系统时,才能使用DTO,并且它们没有默认或标准的通信方式.
随机推荐
-
c# – (wpf)Application.Current.Resources vs FindResource
所以,我正在使用C#中的WPF创建一个GUI.它看起来像这样:它现在还没有完成.这两行是我尝试制作一种数据表,它们在XAML中是硬编码的.现在,我正在C#中实现添加新的水果按钮功能.我在XAML中有以下样式来控制行的背景图像应该是什么样子:因此,在代码中,我为每列col0,col1和col2创建一个图像,如果我使用以下代码,它添加了一个如下所示的新行:如你所见,它不太正确……为什么一个似乎忽略了一些属性而另一个没有?
-
c# – 绑定DataGridTemplateColumn
似乎我已经打了个墙,试图在DataGrid上使用DataTemplates.我想要做的是使用一个模板来显示每个单元格的两行文本.但是似乎无法以任何方式绑定列.以下代码希望显示我想做的事情.注意每个列的绑定:模板列没有这样的东西,因此,这个xaml不可能工作.我注定要将整个DataTemplate复制到每个列,只是对每个副本都有不同的约束?解决方法我不完全确定你想要做什么,但如果您需要获取整行的DataContext,可以使用RelativeSource绑定来移动视觉树.像这样:
-
c# – 学习设计模式的资源
最近我来到了这个设计模式的概念,并对此感到非常热情.你能建议一些帮助我深入设计模式的资源吗?
-
c# – 是否有支持嵌入HTML页面的跨操作系统GUI框架?
我想开发一个桌面应用程序来使用跨系统,是否有一个GUI框架,允许我为所有3个平台编写一次代码,并具有完全可脚本化的嵌入式Web组件?我需要它有一个API来在应用程序和网页之间进行交流.我知道C#,JavaScript和一些python.解决方法Qt有这样的事情QWebView.
-
c# – 通过字符串在对象图中查找属性
我试图使用任意字符串访问嵌套类结构的各个部分.给出以下(设计的)类:我想要从Person对象的一个实例的“PersonsAddress.HousePhone.Number”获取对象.目前我正在使用反思来做一些简单的递归查找,但是我希望有一些忍者有更好的想法.作为参考,这里是我开发的(crappy)方法:解决方法您可以简单地使用标准的.NETDataBinder.EvalMethod,像这样:
-
c# – 文件下载后更新页面
FamilyID=0a391abd-25c1-4fc0-919f-b21f31ab88b7&displaylang=en&pf=true它呈现该页面,然后使用以下元刷新标签来实际向用户提供要下载的文件:你可能需要在你的应用程序中做类似的事情.但是,如果您真的有兴趣在文件完全下载后执行某些操作,那么您的运气不佳,因为没有任何事件可以与浏览器进行通信.执行此操作的唯一方法是上传附件时使用的AJAXupload.
-
c# – 如何在每个机器应用程序中实现单个实例?
我必须限制我的.net4WPF应用程序,以便每台机器只能运行一次.请注意,我说每个机器,而不是每个会话.我使用一个简单的互斥体实现单实例应用程序,直到现在,但不幸的是,这样一个互斥是每个会话.有没有办法创建机器互连,还是有其他解决方案来实现每个机器应用程序的单个实例?
-
c# – WCF和多个主机头
我的雇主网站有多个主机名,都是同一个服务器,我们只是显示不同的皮肤来进行品牌宣传.不幸的是,在这种情况下,WCF似乎不能很好地工作.我试过overridingthedefaulthostwithacustomhostfactory.这不是一个可以接受的解决方案,因为它需要从所有主机工作,而不仅仅是1.我也看过thisblogpost,但是我无法让它工作,或者不是为了解决我的问题.我得到的错误是“这
-
c# – ASP.NET MVC模型绑定与表单元素名称中的虚线
我一直在搜索互联网,试图找到一种方式来容纳我的表单元素的破折号到ASP.NET的控制器在MVC2,3或甚至4中的默认模型绑定行为.作为一名前端开发人员,我更喜欢在我的CSS中使用camelCase或下划线进行破折号.在我的标记中,我想要做的是这样的:在控制器中,我会传入一个C#对象,看起来像这样:有没有办法通过一些正则表达式或其他行为来扩展Controller类来适应这种情况?我讨厌这样的事实,我必须这样做:甚至这个:思考?
-
c# – 用户界面设计工具
我正在寻找一个用户界面设计工具来显示文档中可能的GUI.我不能生成代码.我知道MicrosoftVisio提供了一个功能.但有什么办法吗?您使用哪种软件可视化GUI?