【发布时间】:2013-04-12 09:46:07
【问题描述】:
我有一个 Web API 服务,我已通过使用此处概述的方法将值提取到 ContentPart 中:How to change Orchard record repository。
现在,我要做的是更新我的 ContentPart 上的属性值,并通过 Web API 调用执行更新。我想我已经接近了,但就是无法触发更新方法。
在我的Handler 中,我为OnUpdate 添加了一个处理程序。我可以看到我的 OnUpdate 方法已注册,但它从未执行。
所以我的问题是:这是要使用的正确处理程序事件吗?如果是这样,我怎样才能让它触发?
我应该补充一点,我通过Controller 访问ContentPart,而不是Driver。
【问题讨论】:
-
为什么不从控制器操作调用 Web 服务?此外,即使你有一个特殊的控制器,你的部分也应该有一个驱动程序。
-
我们开始从控制器调用 Web 服务,但随着产品变得越来越大,控制器上的操作开始变得难以阅读/管理。创建部件是抽象访问我们需要的常见项目的工作的一部分。我知道还有其他方法可以做到这一点,但我认为这是一个了解更多关于 Orchard 以及部件如何工作的机会。
-
当我说从控制器执行时,我并不是说所有逻辑都应该存在:控制器操作应该始终保持精简。我的意思是从操作中启动它们,但将逻辑放在服务类中。
标签: asp.net .net asp.net-mvc web-services orchardcms