【问题标题】:Visual Studio 2015 New .NET MVC Project Error: "Index (zero based) must be greater than or equal to zero..."Visual Studio 2015 新的 .NET MVC 项目错误:“索引(从零开始)必须大于或等于零...”
【发布时间】:2023-03-25 21:58:01
【问题描述】:

问题:如何创建一个没有此(与身份验证相关的)错误的新项目?

症状:新的(完全未更改的)项目无法构建(请参阅构建错误图像)。

错误复制步骤:

  1. 打开 Visual Studio(我的版本 = 2015)
  2. 文件
  3. 项目(有关设置,请参阅项目图像)
  4. 好的
  5. 错误(请参阅错误图像以获取警报)
  6. 好的
  7. 构建
  8. 构建错误(参见构建错误图片)

注意:该错误仅在新项目中包含身份验证时才会出现,并且似乎与身份验证有关,因为我收到了几个关于身份验证相关依赖项的警告和错误(请参阅依赖项图像以获取警告)。

我试过了……

  1. 关闭并重新打开 Visual Studio
  2. 卸载并重新安装 Visual Studio

项目

错误

依赖关系

构建错误

一些错误(如果图像难以阅读)

  1. CS0246 找不到类型或命名空间名称“SignInManager”(是否缺少 using 指令或程序集引用?)
  2. CS0246 找不到类型或命名空间名称“OwinStartupAttribute”(是否缺少 using 指令或程序集引用?)
  3. CS0246 找不到类型或命名空间名称“IdentityUser”(是否缺少 using 指令或程序集引用?)
  4. CS0246 找不到类型或命名空间名称“IAuthenticationManager”(是否缺少 using 指令或程序集引用?)

【问题讨论】:

  • 您的屏幕截图显示缺少许多程序集引用。您是否运行了 NuGet 更新和包还原?
  • nuget 更新和包还原后没有运气。请参阅下面的评论或此(stackoverflow.com/questions/27432720/…)答案以了解最终的工作原理。尽管如此,还是感谢您的评论!

标签: asp.net-mvc authentication visual-studio-2015


【解决方案1】:

您附上的屏幕截图清楚地表明您已经破坏了对 asp.net 身份框架的引用。

您可以尝试删除这些引用并重新安装 nuget 包。

这里是包名:Microsoft.AspNet.Identity.Owin

https://www.nuget.org/packages/Microsoft.AspNet.Identity.Owin/

【讨论】:

  • 我将此标记为答案,因为它促使我​​找到了最终的解决方法。但我的问题是如何创建没有错误的新项目 not 如何修复损坏的项目。解决方法的步骤:1)按照@Majid 的建议手动安装所有缺少的软件包(您的构建现在应该成功)。 2)如果 F5 产生与 Microsoft.Owin.Security 相关的错误,请将版本从 2.1.0 升级到 3.1.0(此答案有帮助:stackoverflow.com/questions/27432720/…)。身份验证现在应该可以工作了...
  • ...但是在创建新项目时,我需要重复上述步骤来解决与身份验证依赖相关的错误。
  • 可能是您的机器上出现了一些名声问题。您可以尝试使用 Web 平台安装程序重新安装 Visual Studio 2015 社区版附带的 asp.net MVC 框架。
猜你喜欢
  • 2016-07-02
  • 2011-07-16
  • 2013-09-26
  • 2018-05-24
  • 2012-12-29
  • 2011-12-19
  • 2011-11-20
  • 1970-01-01
  • 2011-04-18
相关资源
最近更新 更多