【问题标题】:The type ____ conflicts with imported type____ 类型与导入类型冲突
【发布时间】:2019-05-03 21:43:53
【问题描述】:

我刚刚开始研究一个在 4.6.2 中运行的 ASPNET 项目。代码下载、构建和运行良好(VS2019 社区),但我收到大量这样的警告:

CS0436 The type 'UserModel' in '...\Crm\App_Code\Models\UserModel.cs' conflicts with the imported type 'UserModel' in 'Crm, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null'. Using the type defined in '...\Crm\App_Code\Models\UserModel.cs'.

无法理解此引用是如何复制自身的。这是我的代码库中一次定义的类型。只有一个构建程序集。没有重复的声明(如 this post )。就像该项目以某种方式引用了自己构建的程序集并感到困惑。这是一些奇怪的 ASPNET 魔法吗?

有趣的是,如果我在 VS2017 专业版中构建它,这些会显示为 CS0012 错误,但不会阻止项目构建或运行。

有人可以帮助了解正在发生的事情还是更好地清除这些警告/错误?

【问题讨论】:

标签: c# asp.net-mvc .net-framework-version


【解决方案1】:

App_Code 不应在 Web 应用程序项目中使用。您将获得 2 个包含相同类型的程序集,一个在 bin 中,一个在 asp.net 临时文件中(由 IIS 本身提供)。只需重命名文件夹(git mv 或类似名称)并重建以验证引用。

【讨论】:

  • 这似乎有帮助,但我仍在尝试找到第二个程序集的输出...
  • %SystemRoot%\Microsoft.NET\Framework\versionNumber\Temporary ASP.NET 文件来自:docs.microsoft.com/en-us/previous-versions/aspnet/…
  • 为我解决了问题 - 只是将“App_Code”文件夹更改为“Code”。清理并重建。
猜你喜欢
  • 1970-01-01
  • 2013-10-19
  • 1970-01-01
  • 2020-02-12
  • 1970-01-01
  • 1970-01-01
  • 2011-12-25
  • 1970-01-01
  • 2013-12-05
相关资源
最近更新 更多