我有一個asp.net核心1.1項目,我需要獲取包含標籤助手的cshtml視圖的編譯C#代碼。如何從asp.net核心中的cshtml視圖獲取編譯的C#代碼?
我知道的可能性precompile the razor views,,但這並沒有幫助,因爲它生成一個dll包含對應於視圖的IL代碼而不是C#代碼。
我發現了以下文章,解釋瞭如何在asp.net mvc,之外使用razor engine,但它與asp.net核心無關。
我有一個asp.net核心1.1項目,我需要獲取包含標籤助手的cshtml視圖的編譯C#代碼。如何從asp.net核心中的cshtml視圖獲取編譯的C#代碼?
我知道的可能性precompile the razor views,,但這並沒有幫助,因爲它生成一個dll包含對應於視圖的IL代碼而不是C#代碼。
我發現了以下文章,解釋瞭如何在asp.net mvc,之外使用razor engine,但它與asp.net核心無關。
我是RazorLight庫(https://github.com/toddams/RazorLight)的作者,它是可以在.NET Core上運行的RazorEngine的替代品。
它可以部分解決您的問題。爲什麼一部分,因爲目前不支持標籤助手,但計劃在未來實施。看看它,我相信它可能對你有用。隨意問任何問題
更新:爲什麼你想要的C#代碼,而不是編譯的DLL
var engine = EngineFactory.CreatePhysical("path here");
string content = "your content to be compiled";
var modelInfo = new ModelTypeInfo(typeof(YourViewModel));
string razorTemplate = engine.Core.GenerateRazorTemplate(new LoadedTemplateSource(content), modelInfo);
。爲什麼C#代碼而不是剃刀? –