我有很多html页面,但我不知道如何通过asp.net mvc视图显示它们。
我将视图作为我的模板,并使用asp.net mvc将html插入到模板中,然后渲染它。
但问题是我必须使用FileStream将原始的基于html的文件读入memroy,然后将其放入视图模板,如ViewData [“content”] = ???。
我只是想知道是否还有其他更好的方法可以将静态html文件呈现给浏览器。
我是否清楚地描述了这个问题?
答案 0 :(得分:0)
我想你可以这样做:
using(var file = new StreamReader(htmlFileName))
{
return Content(file.ReadToEnd());
}
请注意,mime类型自动默认为text / html,但您可以选择通过将类型作为Content
方法的附加参数提供来指定应发送哪些mime类型标头。
答案 1 :(得分:0)
我猜你也可以直接将HTML中的iframe元素指向目标文件url。
答案 2 :(得分:0)
或者,您可以编写自己的ActionResult,将文件内容写入Response.Output(可能会避免将整个文件立即加载到内存中,尽管这可能不是一个大问题。)