使用ASP.NET MVC渲染大量html或文本文件的最佳实践是什么?

时间:2009-02-19 08:07:17

标签: asp.net asp.net-mvc

我有很多html页面,但我不知道如何通过asp.net mvc视图显示它们。

我将视图作为我的模板,并使用asp.net mvc将html插入到模板中,然后渲染它。

但问题是我必须使用FileStream将原始的基于html的文件读入memroy,然后将其放入视图模板,如ViewData [“content”] = ???。

我只是想知道是否还有其他更好的方法可以将静态html文件呈现给浏览器。

我是否清楚地描述了这个问题?

3 个答案:

答案 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(可能会避免将整个文件立即加载到内存中,尽管这可能不是一个大问题。)