实现仅写入剃刀 _Layout + const 字符串主体的 ActionResult

Implement ActionResult that just writes the razor _Layout + a const string body

我正在用 jspm 编写一个 ReactJs 应用程序,我的很多视图最终看起来像这样

<script>System.import('customers')</script>

<script>System.import('invoicing')</script>

所以发送到浏览器的是 _Layout.cshtml(由 _ViewStart.cshtml` 定义)和那个简单的正文。

由于这里几乎没有差异,我想根本不必创建视图文件(这还有其他原因)。我希望能够做到

return new LoadJsModuleResult('customers');

return new LoadJsModuleResult('invoicing');

我将如何写 LoadJsModuleResult

我正在查看 ViewResultViewEngineResult 的来源,但似乎那时一切都已经组装好,组装发生在 ViewEngineCollection 的某个地方。我可以追踪到 BuildManagerWrapper.GetCompiledType 但随后我们进入 System.Web.

的深处

有人有什么提示吗?

您可以在包含

的共享中查看 LoadJSModule.cshtml
@model string
<script>System.import('@Model')</script>

然后在你的控制器中 return View("LoadJSModule", "modulename")

您可以在 Controller 子类中拥有一个方法,所有控制器都继承自

public ViewResult LoadJSModule(string modulename) {
   return View("LoadJSModule", modulename);
}

所以你可以 return LoadJSModule("mymodule")