无法找到资源。
描述:HTTP 404.您正在查找的资源(或其中一个依赖项)可能已被删除,名称已更改或暂时不可用。请查看以下网址,确保拼写正确。
请求的网址:/Customer/Reservation/Default.aspx
我该如何解决这个问题?如果我将Default.aspx添加到文件夹保留,将解决我的问题,但有没有办法解决这个错误? :)
提前致谢!
答案 0 :(得分:1)
我假设Default.aspx
位于虚拟目录Customer
或root中,您正在开发可能已添加到/Customer/Reservation
页面的用户控件?如果是这样,请在服务器端使用ResolveUrl
Response.Redirect(ResolveUrl("~/Default.aspx"));
或者要在标记中创建该目录的链接,请使用:
<a href="<% = ResolveUrl("~/Default.aspx") %>">Click here to go home</a>
但是,如果您只是尝试导航到/Customer/Reservation
,并在IIS中将默认页面设置为Default.aspx
,那么您必须向虚拟主机添加Default.aspx
页面子目录。
答案 1 :(得分:0)
只需添加文件即可。它给你这个错误的原因是因为它无法找到文件夹的默认文档(如果我没记错的话)IIS默认情况下不显示文件夹中的文件列表。
我真的不知道你在这里遇到了什么问题。该错误具有相当的描述性。
答案 2 :(得分:0)
您基本上有两种选择:
create that file
或use routing to map that address to a desired file
。
第二种方法的例子:
protected void Application_Start(object sender, EventArgs e)
{
RegisterRoutes(RouteTable.Routes);
}
private void RegisterRoutes(RouteCollection routes)
{
routes.MapPageRoute("customer-reservation", // name of the route
"Customer/Reservation", // url to look for
"~/Pages/reservation.aspx"); // existing file to map to
}
请注意,如果您使用的是webforms,则至少需要.NET版本4或更高版本,或者使用MVC才能使用它。如果您使用较低的.NET版本而不使用MVC,则需要一个url重写模块(在Google上搜索它,返回大量结果)。
注意2:此示例属于Global.asax.cs
文件。
注3:此处可以找到另一个示例:http://weblogs.asp.net/jalpeshpvadgama/archive/2011/12/11/easy-url-rewriting-in-asp-net-4-0-web-forms.aspx
如果您需要查找有关此主题的更多资源,只需输入“asp.net routing”即可获得足够的结果以供学习。