1

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

我们的团队正在努力开发 Web 门户框架。

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

Carane.Accounting.Web:

  • VoucherSmartPart.cshtml
  • VoucherSmartPart.js

Carane.Inventory.Web:

  • GoodRequest.cshtml
  • GoodRequest.js

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

由于门户是使用 HotTowel 的 SPA,因此我配置为从 ControllerDurandal获取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 返回。

重要的是,cshtml 文件在渲染时应该可以通过 Visual Studio进行调试。

4

0 回答 0