如何避免错误 -- System.InvalidCastException:无法将对象转换为类型 'System.Collections.Generic.ICollection

How to Avoid Error -- System.InvalidCastException: Unable to cast object to type 'System.Collections.Generic.ICollection

我是使用 C# 进行 ASP.NET MVC 编码的初学者,在其中一个学习课程中,我使用 [=53= 实现了 2 SQL 服务器 table 之间的关系].

但是,当我在本地主机上尝试 运行 时,出现了这个错误:

System.InvalidCastException
HResult=0x80004002
Message=Unable to cast object of type 'Dev.DB.SUST_INC_TRCKR_DTLS' to type 'System.Collections.Generic.ICollection`1[Dev.DB.SUST_INC_TRCKR_DTLS]'.
Source=Dev.DB

StackTrace:

at Dev.DB.DBOperations.SustHCRepository.Onboard_Sust_HC(HC_TBL hc) in C:\Users\NT_ID\source\repos\Training\Dev.DB\DBOperations\SustHCRepository.cs:line 32
at MVC_Lesson13.Controllers.CreateController.Index(HC_TBL hc) in C:\Users\NT_ID\source\repos\Training\MVC_Lesson13\Controllers\CreateController.cs:line 30
at System.Web.Mvc.ControllerActionInvoker.InvokeActionMethod(ControllerContext controllerContext, ActionDescriptor actionDescriptor, IDictionary2 parameters) at System.Web.Mvc.Async.AsyncControllerActionInvoker.<>c.<BeginInvokeSynchronousActionMethod>b__9_0(IAsyncResult asyncResult, ActionInvocation innerInvokeState) at System.Web.Mvc.Async.AsyncResultWrapper.WrappedAsyncResult2.CallEndDelegate(IAsyncResult asyncResult) at System.Web.Mvc.Async.AsyncControllerActionInvoker.EndInvokeActionMethod(IAsyncResult asyncResult) at System.Web.Mvc.Async.AsyncControllerActionInvoker.AsyncInvocationWithFilters.<>c__DisplayClass11_0.b__0() at System.Web.Mvc.Async.AsyncControllerActionInvoker.AsyncInvocationWithFilters.<>c__DisplayClass11_2.b__2()

下面是我在实体 .tt classes.

中使用的两个 classes

主键table的模型class:

外键 table 的模型 class:

实体 .tt C# 主键 table:

实体 .tt 外键的 C# table:

数据库操作存储库 C#(这是我收到错误的地方):

我确实知道我犯了一些错误。但是,google 或堆栈论坛的 none 可以提供解决方案。

请帮忙

下次请post代码而不是图片,否则您的post将被关闭。

但是由于元旦放假,修正错误信息所在的行,应该是

SYST_IC_TRCKR_DTLS= new List<SYST_INC_TRCKR_DTLS> {SYST_INC_TRCKR}