2016-09-17 7 views
0

私はhtmlというファイルを私のSPAとMVC viewengine(footer)の両方で使用しています。私はこれを共有したいと思いますが、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]属性を適用して、ブラウザが直接アクセスできないようにすることです。

関連する問題