3

我需要将 ASP.NET MVC 视图呈现为字符串,以便能够通过电子邮件发送它(它是在 .ascx 文件中定义的订单确认电子邮件)。

我已经成功地能够使用此问题中的一种方法将 ASP.NET MVC 视图呈现为字符串。

但是现在我需要能够通过 WCF 服务(将通过 silverlight 访问)来做到这一点,所以我没有ControllerContext. 此 WCF 服务包含在与我的 MVC 项目相同的项目中,因此可以访问我的所有模型等。

我已经在 Stackoverflow 上查看了有关此问题的几个问题,但它们似乎都需要控制器上下文。我以为 mvccontrib 中有一些东西,但它似乎不再存在了

我发现的最接近的是上述问题的公认答案,但不幸的是,它在您正在渲染的视图中与 RenderPartial 中断。

我希望也许一些与 RenderAction 相关的 ASP.NET MVC 2 的幕后工作可能有助于现在实现这一点?

4

2 回答 2

1

那么即使是的,为什么不创建一个 ControllerContext呢?

于 2010-01-03T04:10:38.063 回答
1

Web 表单视图引擎集成到 MVC 中的方式需要控制器上下文,因为它实际上将模板/呈现冒泡到 ASP.NET Page 类,后者将模板内容直接写入响应流。

我建议您查看 spark 视图引擎(它将呈现 WFVE 模板而不进行更改)并使用它从 WCF 服务中生成模板化电子邮件。Spark 下载中有这方面的示例。

于 2010-01-13T19:54:55.137 回答