gpt4 book ai didi

c# - 在 ASP.NET MVC 2 中将 View 呈现为字符串

转载 作者:太空狗 更新时间:2023-10-29 23:42:25 25 4
gpt4 key购买 nike

我们需要将 ActionResult 呈现为 string 以将页面添加到我们的内部搜索引擎索引中。我们选择了 this solution to render to string .

我在处理 View 时遇到了 ExecuteResult 调用的问题。

代码片段:

var oldController = controllerContext.RouteData.Values["controller"];
controllerContext.RouteData.Values["controller"] =
typeof(TController).Name.Replace("Controller", "");

viewResult.ExecuteResult(controllerContext); // this line breaks

我收到以下错误:

"Object reference not set to instance of object" error.

我已确认 viewResult 不为空,因此必须在 ExecuteResult 内部抛出异常。

我们可能遗漏了什么?

最佳答案

我想通了。 ExecuteResult 的问题没有按预期工作是因为我没有正确模拟 ControllerContext。我能够按照这篇 SO 帖子中的描述模拟 controllercontext 来解决这个问题:

Mocking Asp.net-mvc Controller Context

希望这篇文章对将来尝试做类似事情的人有所帮助。

关于c# - 在 ASP.NET MVC 2 中将 View 呈现为字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2456139/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com