【问题标题】:IIS server error .Server Error in '/' ApplicationIIS 服务器错误。“/”应用程序中的服务器错误
【发布时间】:2017-09-18 14:54:18
【问题描述】:

这是一个 ASP.NET MVC 应用程序,但使用 Web 窗体视图引擎 (.aspx) 而不是 Razor 视图引擎 (.cshtml)。

我已经在项目和 IIS 默认文档中将默认起始页设置为 Login.aspx。但是,如果我在网络浏览器中输入http://localhost:150/Login.aspx,它就可以工作。我做错了什么?

【问题讨论】:

  • 配置 RouteConfig 文件是否说默认控制器和操作是 Home、Index?
  • @AlejandroPérezFals 嗨,这是我第一次处理发布 mvc 应用程序。我刚刚检查了路由配置,这就是我看到的 public class RouteConfig { public static void RegisterRoutes(RouteCollection routes) { routes.IgnoreRoute("{resource}.axd/{*pathInfo}"); routes.MapRoute( name: "Default", url: "{controller}/{action}/{id}", defaults: new { controller = "Home", action = "Index", id = UrlParameter.Optional } ); } }
  • 您的路线 '/' 表示您尝试访问的控制器和操作是 Home、Index。确保你有一个 Home 控制器和一个 Index 操作。
  • 您是什么意思“但使用 aspx 网页表单页面而不是视图”?您的意思是您实际上有视图,但它们使用的是 Web 窗体视图引擎而不是 Razor 视图引擎?
  • @mason 正确的 webforms aspx 而不是 cshtml

标签: asp.net .net asp.net-mvc iis iis-8


【解决方案1】:

如果你想访问路由'/',你应该有一个 HomeController。在这个控制器中,放置一个返回 View() 的 Index 操作。然后在 Views/Home 文件夹中创建一个 Index.aspx 文件。如果您想在使用路由“/”进入您的站点时访问其他视图,那么您应该更改您的 RouteConfig 文件,并将默认控制器和操作设置为其他。

【讨论】:

    【解决方案2】:

    我想通了。我将登录页面移到了 VIEWS 文件夹中(之前没有)。

    创建了一个默认控制器

    public class DefaultController : Controller
        {
            // GET: Default
            public ActionResult Index()
            {
                return Redirect("~/Login.aspx");
            }
        }
    

    并非一切似乎都有效。谢谢您的帮助。

    【讨论】:

      猜你喜欢
      • 2013-04-30
      • 1970-01-01
      • 1970-01-01
      • 2017-07-02
      • 1970-01-01
      • 1970-01-01
      • 2015-10-09
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多