【发布时间】:2013-11-15 21:59:27
【问题描述】:
我设置了一个空的 ASP.NET Web 应用程序来为我们的团队提供 NuGet 存储库。我将它创建为一个空的 Web 应用程序,除了将 NuGet.Server 包添加到解决方案并将测试包添加到 Packages 目录之外,我没有做任何其他事情。
我已将应用程序发布到 IIS,确认我的目标是正确的框架 (4.0),并查看了我能找到的关于该主题的所有帖子。我一直没能找到解决办法。基本上,当我转到http://locoalhost/NuGet_Test 时,我希望被重定向到http://localhost/NuGet_Test/Default.aspx,但这并没有发生。我可以直接去http://localhost/NuGet_Test/Default.aspx,一切正常。但我不知道为什么它不会默认。我很担心,因为如果将来其他 Web 应用程序发生这种情况,我不知道该怎么办。
另外,我已验证 default.aspx 位于 IIS (7.0) 的默认文档列表中。
【问题讨论】:
-
defaultdocument 可能是票证。请在此处查看iis.net/configreference/system.webserver/defaultdocument
-
在你的 global.asax 中试试这个... public void Application_Start(object sender, EventArgs e) { RouteTable.Routes routeCollection; routeCollection.MapPageRoute("DefaultRoute", string.Empty, "~/YourDesiredSubFolder/YourDesiredDocument.aspx"); }
-
两个都试一试。没运气。接受其他建议。
-
@foxtrotZulu,仅供参考,当我试一试您的解决方案时,我收到消息说“RouteTable.Routes 是一个像类型一样使用的属性。”刚拿出来尝试添加变量:
RouteTable.Routes.MapPageRoute -
对不起,试试这个... var routeCollection = RouteTable.Routes; routeCollection.MapPageRoute("DefaultRoute", string.Empty, "~/NuGet_Test/Default.aspx");
标签: asp.net nuget-server