动态加载和呈现cshtml文件,并在控制器中以html格式返回

时间:2013-09-22 07:36:38

标签: c# asp.net-mvc asp.net-mvc-4 single-page-application hottowel

我正在开发一个大型软件,它包含大约300个用C#编写的项目。该软件基于框架和基于WinForm的UI门户工作。

我们的团队正致力于开发Web门户框架。

Web门户将加载并返回驻留在各种dll中的javascript,cshtml和css文件。例如:

Carane.Accounting.Web:

  • VoucherSmartPart.cshtml
  • VoucherSmartPart.js

Carane.Inventory.Web:

  • GoodRequest.cshtml
  • GoodRequest.js

框架位于 Carane.Portal.Web 之类的地方。

由于门户网站是使用HotTowel的SPA,我配置了Durandal以从控制器获取html次观看和javascript viewmodels

返回Javascript文件的控制器工作正常。

问题在于ViewController应该是这样的:

public class ViewController : ApiController
    {
        [HttpGet]
        public string GetSmartPart(string moduleName, string smartpartName)
        {
            // some code to retrieve the cshtml file from the dll
            // and render the cshtml and return the html in a way
            // as Durandal recognize it as a html file.
        }
    }

问题:

  1. 如何从另一个项目中获取cshtml个文件参与框架项目?
  2. 如何呈现cshtml并将其作为html返回。
  3. 重要的是,cshtml文件在呈现时应通过Visual Studio 可调试

0 个答案:

没有答案