Asp.net 将.htm页面呈现为.aspx页面

Asp.net 将.htm页面呈现为.aspx页面,asp.net,Asp.net,在我的.aspx页面中,我想呈现一个包含一些数据的.htm页面 在.aspx页面中,我有: <% Html.RenderPartial("/Views/Templates/HTML_Temp.htm"); %> 但这会产生运行时错误: “/”应用程序中出现服务器错误。 没有为扩展名“.htm”注册生成提供程序。您可以在machine.config或web.config的部分中注册一个。确保is具有BuildProviderApplicationsToAttribute属性,该属

在我的.aspx页面中,我想呈现一个包含一些数据的.htm页面 在.aspx页面中,我有:

<% Html.RenderPartial("/Views/Templates/HTML_Temp.htm"); %>

但这会产生运行时错误:

“/”应用程序中出现服务器错误。 没有为扩展名“.htm”注册生成提供程序。您可以在machine.config或web.config的部分中注册一个。确保is具有BuildProviderApplicationsToAttribute属性,该属性包含值“Web”或“All”

如何解决此问题…请帮助

使用#包括 将一些HTML内容放入包含页面的最简单方法是使用带有
#include的服务器include

<!-- #include file="../Templates/HTML_Temp.htm" -->
// for relative paths

//对于相对路径


//对于虚拟路径
Asp.net升级到2.0的更好方法 当然,更好的方法是将HTML文件重命名为ASCX,并创建一个没有任何特定功能的通用CS文件。对所有新创建的ASCX文件使用相同的CS文件(类关系)

Asp.net 2.0及以上版本的更好方法 创建包含常用内容的母版页(或多个母版页;如果您使用3.0或更高版本,也可以嵌套母版页),并在母版页之上开发其他页面。

使用#包含 将一些HTML内容放入包含页面的最简单方法是使用带有
#include的服务器include

<!-- #include file="../Templates/HTML_Temp.htm" -->
// for relative paths

//对于相对路径


//对于虚拟路径
Asp.net升级到2.0的更好方法 当然,更好的方法是将HTML文件重命名为ASCX,并创建一个没有任何特定功能的通用CS文件。对所有新创建的ASCX文件使用相同的CS文件(类关系)

Asp.net 2.0及以上版本的更好方法 创建包含常用内容的母版页(或多个母版页;如果您使用的是3.0或更高版本,也可以嵌套母版页),并在母版页之上开发其他页面。

请尝试以下方法:

试试以下方法:




#include在.NET中不再有效,是吗?看来他们真的在工作。我可以在网上找到多篇文章说它确实如此。我自己还没有测试过。因此,我在回答的第二部分。实际上,在ASP 2.0中可以有嵌套的母版页。请参阅:#include在.NET中不再有效,是吗?看来他们真的在工作。我可以在网上找到多篇文章说它确实如此。我自己还没有测试过。因此,我在回答的第二部分。实际上,在ASP 2.0中可以有嵌套的母版页。请参阅:
Html.RenderPartial()
无论如何都是Asp.net MVC的一部分。你说的是常规web表单,不是吗?
Html.RenderPartial()
无论如何都是Asp.net MVC的一部分。你说的是常规的网络表单,不是吗?
<%= System.IO.File.ReadAllText(Server.MapPath("~/Views/Templates/HTML_Temp.htm")) %>