小编Jim*_*m S的帖子

此版本的Microsoft.AspNetCore.All仅与netcoreapp2.1目标框架兼容

当我从2.0升级到.NET Core 2.1后尝试将我的应用程序发布到Web服务器时,我收到此消息:"此版本的Microsoft.AspNetCore.All仅与netcoreapp2.1目标框架兼容.请定位netcoreapp2. 1或选择与netcoreapp2.0兼容的Microsoft.AspNetCore.All版本."

它在我的开发机器上运行良好.

这是我的项目文件:

<Project Sdk="Microsoft.NET.Sdk.Web">
<PropertyGroup>
    <TargetFramework>netcoreapp2.1</TargetFramework>
    <RunPostBuildEvent>Always</RunPostBuildEvent>
</PropertyGroup>
<ItemGroup>
    <PackageReference Include="Microsoft.AspNetCore.All" Version="2.1.0" />
    <PackageReference Include="Microsoft.AspNetCore.Cors" Version="2.1.0" />
    <PackageReference Include="Microsoft.EntityFrameworkCore.SqlServer" Version="2.1.0" />
    <PackageReference Include="Microsoft.EntityFrameworkCore.Tools" Version="2.1.0" />
    <PackageReference Include="Microsoft.VisualStudio.Web.CodeGeneration.Design" Version="2.1.0" />
    <PackageReference Include="Microsoft.VisualStudio.Web.CodeGeneration.Tools" Version="2.0.4" />
</ItemGroup>
</Project>
Run Code Online (Sandbox Code Playgroud)

我已经看过,但似乎没有问题.我还尝试了CodeGeneration.Tools的预发布2.1版本,但我无法安装它.

编辑:我在服务器上安装了dotnet 2.1.

这是我在服务器上看到的内容:

D:\>dotnet --info
Host (useful for support):
  Version: 2.1.0
  Commit:  caa7b7e2ba

.NET Core SDKs installed:
  No SDKs were found.

.NET Core runtimes installed:
  Microsoft.AspNetCore.All 2.1.0 [C:\Program Files (x86)\dotnet\shared\Microsoft.AspNetCore.All]
  Microsoft.AspNetCore.App 2.1.0 [C:\Program Files (x86)\dotnet\shared\Microsoft.AspNetCore.App]
  Microsoft.NETCore.App 2.0.5 [C:\Program …
Run Code Online (Sandbox Code Playgroud)

c# razor-pages .net-core-2.1

49
推荐指数
5
解决办法
2万
查看次数

LINQ to Entities group by和Count()

我有以下LINQ到实体查询

from r in ctx.Rs
join p in ctx.Ps on r.RK equals p.RK
group r by r.QK into gr
select new { QK = (int)gr.Key, Num = gr.Count() }
Run Code Online (Sandbox Code Playgroud)

针对此架构运行

Table P  Table R   Table Q
 PK*
 RK ----> RK*
 Text     QK ------> QK*
          Text       Text
Run Code Online (Sandbox Code Playgroud)

如果Q中有任何记录,并且P中没有相应的记录,则给出此消息:"转换为值类型'Int32'失败,因为具体化值为null.结果类型的泛型参数或查询必须使用可空类型. "

问题是最后一行中的gr.Count(),但我找不到解决方案.我试图测试gr为null,但找不到有效的方法.

我已经看到使用Sum()而不是Count()的类似问题的一些解决方案,但我无法使它们适应我的问题.

我尝试将查询更改为在Linq问题中的Group和Count中的查询,但我只是得到了不同的消息.

我还查看了实体框架中的Group and Count(以及其他一些),但问题不同.

c# linq entity-framework group-by count

8
推荐指数
2
解决办法
3万
查看次数

实体框架,数据库优先,未创建类文件

我有一个从 MS SQL 数据库创建的非常复杂的 EF 模型。(我使用的是 EF 6.1.0。)我向数据库添加了一个表并执行了“从数据库更新模型”。不幸的是,出了点问题,虽然在 .edmx 文件(如 XML 编辑器中看到的)中为表及其关系(所有正确和完整,据我所知)生成了大量 XML,但没有生成类声明. 当我在 .tt 下查看模型中所有表的 .cs 文件所在的位置时,该类没有 .cs 文件。由于该类已经在 .edmx 文件中,我无法重复“从数据库更新模型”。

过去我以这种方式在模型中添加了许多表,我看不出这个表有什么不同。

以下是我尝试过的一些事情:

  • 搜索了网络,但没有找到似乎相关的内容。大多数文章都是关于使用“从数据库更新模型”的教程。这是一个示例:在 EF Database First 项目中更新模型
  • 使用 XML 编辑器从 .edms 文件中删除对表、其关联和实体集的所有引用。然后我关闭 VS,重新启动,重新打开它,并重复“从数据库更新模型”。我得到了同样的结果。
  • 在模型浏览器中查看是否可以删除该类,但它不存在。
  • 关闭了我所有的 VS 窗口。(一篇文章提出了这一点。)

有人有建议吗?先感谢您。

c# sql-server visual-studio database-first entity-framework-6

5
推荐指数
0
解决办法
1487
查看次数

.net核心相当于Debugger.Break()

.NETCore中,是否有一种方法可以使C#我的异常处理程序中的代码在连接调试器时总是中断,就像Debugger.Break()前面的代码一样.NET

c# debugging .net-core

5
推荐指数
0
解决办法
90
查看次数