linq 必须添加对程序集mscorlib(版本=4.0.0)的引用

mwyxok5s  于 2022-12-06  发布在  其他
关注(0)|答案(9)|浏览(252)

我在将一个Web项目从RC1迁移到RC2时遇到了一些问题。当我切换时,我在整个项目中遇到了一系列这样的错误。
类型“Func〈,〉”是在未引用的程序集中定义的。必须添加对程序集“mscorlib,Version=4.0.0.0,Culture=neutral,PublicKeyToken=b77a5c561934e089”的引用
看起来所有的linq函数和lambda表达式都不起作用。
project.json文件如下所示:

"frameworks": {
    "netcoreapp1.0": {
      "dependencies": {
        "System.Linq": "4.1.0-rc2-24027"
      },
      "imports": [ "net451", "portable-net45+win8" ]
    }
  },
  "dependencies": {
    "NETStandard.Library": "1.5.0-rc2-24027",
    "Microsoft.EntityFrameworkCore": "1.0.0-rc2-final",
    "Microsoft.EntityFrameworkCore.SqlServer": "1.0.0-rc2-final",
    "System.ComponentModel.Annotations": "4.1.0-*"
  }

我试过运行dotnet restore,没有任何帮助。

s3fp2yjn

s3fp2yjn1#

我遇到了同样的问题,将以下软件包添加到我的project.json依赖项中为我解决了这个问题:

"Microsoft.NETCore.Portable.Compatibility": "1.0.1-rc2-24027",

此套件可与mscorlib架构的PCL相容。

q3qa4bjr

q3qa4bjr2#

事实上,问题是需要asp.net 4.0或4.5版本(低于Core)的旧lib。
Microsoft通过安装下面的NuGet程序包提供了解决方案。
Microsoft.NETCore.Portable.Compatibility
这样,您就可以使用旧库运行代码。

jm81lzqq

jm81lzqq3#

删除解决方案文件夹中存在的**.csproj**.user as per in the Screenshot。从解决方案资源管理器卸载项目。重新加载项目并生成一次。这对我很有效。

pftdvrlh

pftdvrlh4#

当我使用模板类库(.NET标准)创建新项目并将一些代码移植到其中以重复使用时,出现此错误。
我创建了一个新项目
类库(.NET Framework)
,并将代码移到那里,它工作起来没有任何问题。

eqoofvh9

eqoofvh95#

我在一个单元测试项目中工作时突然遇到了这个错误。尝试了前面提到的建议,如卸载和重新加载项目,重新构建等。最终所需要的只是重新启动Visual Studio - * 您是否尝试关闭它并再次打开 *:-)VS版本16.11.5

ldfqzlk8

ldfqzlk86#

对于MVC 5,必须添加2个引用右键单击项目,然后添加引用

程序集〉框架

添加这2个参考

*系统.身份模型4.0.0.0
*系统.身份模型.服务4.0.0.0

zfycwa2u

zfycwa2u7#

我没有代表发表评论,但Matt肯普的帖子引出了我的解决方案。在我的案例中,它使用了类库(.Net标准)而不是Android类库(Xamarin)

qojgxg4l

qojgxg4l8#

默认情况下添加了mscorlib引用,但这似乎是visual studio引用的问题。我已经删除了我的项目并创建了一个新的,然后它工作得很好。

ubof19bj

ubof19bj9#

在这里添加这个希望它能帮助其他人,虽然我的场景不是一个Web项目。当加载一个winforms窗体(设计器)时,我收到错误无法找到程序集'mscorlib我删除了那个文件的resx文件,让设计器重新创建它。在将一个在.netframework项目中创建的窗体复制到一个.net6项目后,发生了这种情况。
同样,与OP无关,但这是我能找到的最接近我的问题的线程

相关问题