C# 动态加载和呈现cshtml文件,并以html形式返回控制器

C# 动态加载和呈现cshtml文件,并以html形式返回控制器,c#,asp.net-mvc,asp.net-mvc-4,single-page-application,hottowel,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

我正在开发一个大型软件,它由大约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的地方

由于门户是使用HotTown的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.
        }
    }
问题:

  • 如何从另一个项目中获取
    cshtml
    文件以参与框架项目
  • 如何呈现
    cshtml
    并将其作为html返回

  • 在呈现cshtml文件时,它必须能够通过Visual Studio进行调试。

    值得一提的是,Javascript文件的调试问题仍然存在。@afshinalizadeh但它不支持调试。