2016-09-17 63 views
0

我有一個html文件,由我的SPA和MVC視圖引擎(頁腳)使用。我想分享這個,但我不知道如何呈現MVC中的HTML文件。 RenderPartial似乎不工作 - 所以我堅持與File.ReadAllText。有沒有一種乾淨的方式來呈現一個MVC的HTML部分?在MVC中包含html(不是cshtml)作爲局部視圖

+2

檢查[this SO](http://stackoverflow.com/questions/20871938/render- html-file-in-asp-net-mvc-view)或[this](http://stackoverflow.com/questions/6849207/rendering-html-files-as-views-in-asp-net-mvc) –

回答

1

使用Html.Action

查看:

<div> 
    @Html.Action("LoadHtmlPage","Home", new { @path = Url.Content("~/Views/Home/Home.html") }) 
</div> 

控制器:

[ChildActionOnly] 
public ActionResult LoadHtmlPage(string path) 
{ 
    return new FilePathResult(path, "text/html"); 
} 

注:這開闢了一個漏洞任何人都可以使用那c ontroller行動來獲取您的網站上的任何文件。最簡單的解決方法是將[ChildActionOnly]屬性應用於控制器操作,以便它不能被瀏覽器直接訪問