【问题标题】:The Web server is configured to not list the contents of this directoryWeb 服务器配置为不列出此目录的内容
【发布时间】:2013-04-06 15:22:05
【问题描述】:

使用 Visual Studio 2012:

  1. 我创建了一个“ASP.NET 空 Web 应用程序”(使用 C#)。
  2. 我使用 NuGet 安装了FubuMVC 包。
  3. 当我运行应用程序(使用 IIS Express)时,我收到“欢迎使用 FubuMVC!”页面告诉我删除FubuMVC.GettingStarted.dll 文件并设置主页。
  4. 所以我做了这两件事,实现了一个HomeController,它只从Index返回"Hello World"

我得到一个 IIS 错误,而不是预期的“Hello World”:The Web server is configured to not list the contents of this directory.

我做错了什么?

【问题讨论】:

  • 您可以浏览到 /_fubu/ 并查看您的路线吗?

标签: fubumvc


【解决方案1】:

您是否在 Global.asax 中激活了 FubuMVC?当没有 FubuMVC 应用程序时,我通常会看到该错误。

所以在 Application_Start() (或其他任何名称)中,您需要类似以下内容:

FubuApplication.DefaultPolicies().StructureMap(new Container()).Bootstrap();

你在哪里告诉它: 1.) 使用什么政策/惯例 2.) 你的 IoC 容器是什么

【讨论】:

  • “ASP.NET 空 Web 应用程序”项目没有 Global.asax。 FubuMVC NuGet 包添加了一个指向AppStartFubuMVC.StartWebActivator.PreApplicationStartMethod 属性。
  • ...运行成功。这指向ConfigureFubuMVC,它也运行成功。基本上,NuGet 包和/或文档中缺少一些东西。
【解决方案2】:

我建议您重新编译您的应用程序或至少触摸您的 global.asax —— 看起来您需要重新运行 App_Start 方法。

【讨论】:

    【解决方案3】:

    如果我遇到这种情况,通常是因为我与项目中的路线和文件夹发生冲突。例如,我可能有一个名为“Unit”的文件夹,在其中我有一个名为“UnitEndpoint”的类,其方法为“get_unit”(假设我使用的是 FubuMVC 默认值,它应该映射到“/unit”作为路由)。

    在这种情况下,浏览到“/unit”将导致此错误,因为 IIS 认为我正在尝试列出“Unit”文件夹的内容。重命名端点或文件夹以消除冲突将修复它(例如,将“Unit”文件夹重命名为“Units”)。

    【讨论】:

      【解决方案4】:

      刚刚尝试用一个全新的项目重现您的问题;事实证明,问题在于示例中的说明没有跟上 FubuMVC 中的变化。

      说明告诉您创建一个名为“MyHomeController”的类并向其添加 Index() 方法。这曾经有效,因为路由的默认规则之一是使用名称以“Controller”结尾的任何类。

      但在最近的版本中,默认值已更改,现在该规则会查找以“EndPoint”结尾的类。

      因此,如果您将类的名称从“MyHomeController”更改为“MyHomeEndpoint”,它应该可以工作。

      另外,请记住应用程序池需要重新启动才能使新配置生效,因此您可能需要修改 web.config(或强制 IISExpress 重新启动)。

      【讨论】:

        【解决方案5】:

        试试这个 cmd => 别忘了以管理员身份运行

        %windir%\Microsoft.NET\Framework64\v4.0.30319\aspnet_regiis.exe -ir

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2017-09-16
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多