错误CS0411 -EF 6,Dotnet Core 6,MS SQLServer

发布于 2025-02-01 03:15:48 字数 2506 浏览 3 评论 0原文

我的情况 Visual Studio 2022,Blazor WebApplication + ASPNET托管(我的解决方案中的3个项目),带有现有DB的SQL Server(其他应用程序使用)。

Tabuser有一个带有Tabuserroles的FK(1 - >许多),

因此我尝试为我的实体创建模型。我将CMD与命令一起使用

dotnet ef dbcontext scaffold "connectionstring" Microsoft.EntityFrameworkCore.SqlServer -o Models

,一切正常,但是...当我编译时,我会收到几个 cs0411 我的桌子错误,

  entity.HasOne()   //entity is TabUserRoles
      .WithMany()
       .HasForeignKey(d => d.IdUser)
        HasConstraintName("Fk_UserRole_Users");

我可以通过编写明确的类型来成功编译

  entity.HasOne<TabUserRole>()                //<====== another Table/DBSet
      .WithMany()
       .HasForeignKey(d => d.IdUser)
        HasConstraintName("Fk_UserRole_Users");

,但是当我尝试检索时 来自我的Blazor Server的错误500的Tabusers的数据

_context.TabUsers.ToList();  //error happens HERE

,开发人员工具控制台是

1 .Failed to load resource: net::ERR_CONNECTION_REFUSED

2. api/user:1          Failed to load resource: the server responded with a status of 500 ()
blazor.webassembly.js:1 crit: Microsoft.AspNetCore.Components.WebAssembly.Rendering.WebAssemblyRenderer[100]
      Unhandled exception rendering component: Response status code does not indicate success: 500 (Internal Server Error).
System.Net.Http.HttpRequestException: Response status code does not indicate success: 500 (Internal Server Error).
   at System.Net.Http.HttpResponseMessage.EnsureSuccessStatusCode()
   at System.Net.Http.Json.HttpClientJsonExtensions.<GetFromJsonAsyncCore>d__13`1[[CAPhotoManager.Shared.ServiceResponse`1[[System.Collections.Generic.List`1[[CAPhotoManager.Shared.Model.TabUser, CAPhotoManager.Shared, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null]], System.Private.CoreLib, Version=6.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]], CAPhotoManager.Shared, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null]].MoveNext()
   at CAPhotoManager.Client.Services.UserService.GetUsers() in C:\Progetti\net\CAPhotoManager\CAPhotoManager\Client\Services\UserService.cs:line 17
   at CAPhotoManager.Client.Pages.Users.OnInitializedAsync() in C:\Progetti\net\CAPhotoManager\CAPhotoManager\Client\Pages\Users.razor:line 25
   at Microsoft.AspNetCore.Components.ComponentBase.RunInitAndSetParametersAsync()
   at Microsoft.AspNetCore.Components.RenderTree.Renderer.GetErrorHandledTask(Task taskToHandle, ComponentState owningComponentState)

My scenario
Visual Studio 2022, Blazor WebApplication + ASPnet hosted (so 3 projects in my solution), SQL Server with existing DB (used by other apps).

TabUser has a FK with TabUserRoles (1 -> many)

so i try to scaffold db to create models for my entities. I use CMD with command

dotnet ef dbcontext scaffold "connectionstring" Microsoft.EntityFrameworkCore.SqlServer -o Models

everything works fine but... when I compile i receive a couple of CS0411 errors for my tables

  entity.HasOne()   //entity is TabUserRoles
      .WithMany()
       .HasForeignKey(d => d.IdUser)
        HasConstraintName("Fk_UserRole_Users");

I can fix them by writing an explicit type

  entity.HasOne<TabUserRole>()                //<====== another Table/DBSet
      .WithMany()
       .HasForeignKey(d => d.IdUser)
        HasConstraintName("Fk_UserRole_Users");

this compiles successfully but when I try to retrieve data from TabUsers with

_context.TabUsers.ToList();  //error happens HERE

Error 500 from my Blazor server, developer tools console is

1 .Failed to load resource: net::ERR_CONNECTION_REFUSED

2. api/user:1          Failed to load resource: the server responded with a status of 500 ()
blazor.webassembly.js:1 crit: Microsoft.AspNetCore.Components.WebAssembly.Rendering.WebAssemblyRenderer[100]
      Unhandled exception rendering component: Response status code does not indicate success: 500 (Internal Server Error).
System.Net.Http.HttpRequestException: Response status code does not indicate success: 500 (Internal Server Error).
   at System.Net.Http.HttpResponseMessage.EnsureSuccessStatusCode()
   at System.Net.Http.Json.HttpClientJsonExtensions.<GetFromJsonAsyncCore>d__13`1[[CAPhotoManager.Shared.ServiceResponse`1[[System.Collections.Generic.List`1[[CAPhotoManager.Shared.Model.TabUser, CAPhotoManager.Shared, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null]], System.Private.CoreLib, Version=6.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]], CAPhotoManager.Shared, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null]].MoveNext()
   at CAPhotoManager.Client.Services.UserService.GetUsers() in C:\Progetti\net\CAPhotoManager\CAPhotoManager\Client\Services\UserService.cs:line 17
   at CAPhotoManager.Client.Pages.Users.OnInitializedAsync() in C:\Progetti\net\CAPhotoManager\CAPhotoManager\Client\Pages\Users.razor:line 25
   at Microsoft.AspNetCore.Components.ComponentBase.RunInitAndSetParametersAsync()
   at Microsoft.AspNetCore.Components.RenderTree.Renderer.GetErrorHandledTask(Task taskToHandle, ComponentState owningComponentState)

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文