ActionResult也应该执行其他任务

时间:2009-12-08 07:40:59

标签: asp.net asp.net-mvc

在Asp.net MVC中,鼓励人们派生自定义ActionResults,但是如果这些类处理与视图无关的其他任务,则EmailActionResult可能会呈现视图然后发送电子邮件。 ActionResult类的最佳实践是,它只是特定于视图吗?我也想保持干燥。是否应将电子邮件的发送纳入服务类?也许使用过滤器会起作用。你有什么想法?

2 个答案:

答案 0 :(得分:1)

没有

ActionResult应该是Action的结果,它不应该执行操作。

在您的特定情况下,您应该将电子邮件发送重构为服务类,然后使用ActionResult来指示确切发生的情况。

我很难想象一个“简单”的EmailActionResult可以重复使用以处理不同的场景。

答案 1 :(得分:1)

我同意。它应该是结果,而不是执行操作。