在ASP.NET MVC应用程序中,应如何处理电子邮件的发送?我一直在考虑这个问题,我真的很喜欢以面向MVC的方式处理它的想法(毕竟它是MVC应用程序。)
我的意思是,传递给用户的电子邮件实际上只是一个 View ,应该将模型传递给它。这就引起了一些问题:执行 Action 时,我们如何将 View 同时传递到请求的浏览器和SMTP服务器?框架是否有任何设施来支持这一点?如果不是,是否存在某些第三方发布/此类功能的指南?
以MVC方式处理电子邮件发送的替代方法是:
您如何在ASP.NET MVC应用程序中处理电子邮件的发送?您如何看待面向MVC的方法?
最佳答案
通常,当您需要新的结果类型时,您可以编写一个新的MyResult
对象,该对象将从ActionResult
继承。这样,您的操作方法将可以自由选择所指示的结果类型,并且View Engine可以简单地对新结果类型调用ExecuteResult()
方法,该方法将保留有关如何呈现数据的逻辑。
但是,由于您的操作听起来像只是想从View中获取HTML并将其通过电子邮件发送(与Web浏览器的结果类型相同),因此the answers to this question应该对其进行深入介绍。请注意,使用MVC 2.0代码的答案是最好的方法,因为由于普遍的需求,他们在第二个版本中添加了“向字符串渲染 View ”功能。
您的问题是一个好问题,因为我强烈建议您对程序的任何输出采用MVC方法。从电子邮件发送 View 在概念上与将 View 发送到任何其他输出类型(PDF,移动浏览器,SMS)没有什么不同,并且通过构建可插拔的 View 输出,您将有一种简单的方法来支持扩展应用程序的使用。
关于.net - ASP.NET MVC-应该如何处理发送电子邮件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3231798/