当前位置:  开发笔记 > 后端 > 正文

尝试在EF7和ASP.NET5中使用DbSet <TEntity> .Where()

如何解决《尝试在EF7和ASP.NET5中使用DbSet<TEntity>.Where()》经验,为你挑选了1个好方法。

我已经使用ASP.NET 5 MVC6项目和一些类库创建了一个解决方案.我正在使用Visual Studio 2015,我的目标是"dnxcore50"和"net451".

在类库中,我使用EF7编写存储库代码.在一个类中,我试图在DbSet <>上使用一些方法.即".Where(...)",".Single(...)"和".First(...)".这些可以在旧版本的.NET上获得.

我收到以下2个错误:

.NET Framework 4.5.1错误CS0012:类型"IEnumerable <>"在未引用的程序集中定义.您必须添加对程序集'System.Runtime,Version = 4.0.0.0,Culture = neutral,PublicKeyToken = b03f5f7f11d50a3a'的引用.

.NET Framework 4.5.1错误CS0012:类型"Func <,>"在未引用的程序集中定义.您必须添加对程序集'System.Runtime,Version = 4.0.0.0,Culture = neutral,PublicKeyToken = b03f5f7f11d50a3a'的引用.

它似乎在DNXCORE50格式中没有问题,但不是.NET的完整4.5.1版本.

我在project.json文件中有这个:

"frameworks": {
    "net451": {
      "dependencies": {
        "System.Runtime": "4.0.21-beta-23516"
      }
    },
    "dnxcore50": {
      "dependencies": {
        "System.Runtime": "4.0.21-beta-23516"
        ......
      }
    }
  }

我的目标是1.0.0-rc1-final DNX SDK版本.

有任何想法吗?



1> eyeballpaul..:

好吧,我终于认为我设法找出原因.如果创建类库,则project.json文件具有:

 "net451": { },

在"框架"部分.如果我将其更改为:

"dnx451": { },

它然后工作.我不是百分之百确定这是否会对其他任何事情产生影响.但我现在会用它.

推荐阅读
周扒pi
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有