Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/entity-framework/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C#Entityframework-如何将导航属性从HashSet转换为SortedSet_C#_Entity Framework_Visual Studio_Hashset_Sortedset - Fatal编程技术网

C#Entityframework-如何将导航属性从HashSet转换为SortedSet

C#Entityframework-如何将导航属性从HashSet转换为SortedSet,c#,entity-framework,visual-studio,hashset,sortedset,C#,Entity Framework,Visual Studio,Hashset,Sortedset,我正在使用ADO.NET(来自mysql数据库)创建模型。 我有3个表:shoppinglist、item和shoppinglist\u item表(其中有两个FK,一个用于shoppinglist id,另一个用于item id),因此每个购物列表都包含一个项目列表,每个项目都可以与多个购物列表相关联 我的问题是entityframework使用HashSet中的items对象创建购物列表对象,但我需要它是一个SortedSet。 我还没有找到可以更改它的位置,如果我从.cs更改它,则会出现以

我正在使用ADO.NET(来自mysql数据库)创建模型。 我有3个表:shoppinglist、item和shoppinglist\u item表(其中有两个FK,一个用于shoppinglist id,另一个用于item id),因此每个购物列表都包含一个项目列表,每个项目都可以与多个购物列表相关联

我的问题是entityframework使用HashSet中的items对象创建购物列表对象,但我需要它是一个SortedSet。 我还没有找到可以更改它的位置,如果我从.cs更改它,则会出现以下异常:

Additional information: Unable to set field/property items on entity type System.Data.Entity.DynamicProxies.shopping_list_EAE115FEC280D7AC938BAF17234485EE2BD5991A4D35FE9206D03456BE962D8D. See InnerException for details.

Cannot implicitly convert type 'System.Data.Entity.DbSet<Models.shopping_list>' to 'Models.shopping_list'
其他信息:无法在实体类型System.Data.entity.DynamicProxies.shopping_list_EAE115FEC280D7AC938BAF17234485EE2BD5991A4D35FE9206D03456BE962D8D上设置字段/属性项。有关详细信息,请参见InnerException。
无法将类型“System.Data.Entity.DbSet”隐式转换为“Models.shopping\u list”

我最后在shoppinglist表中添加了一个字段,该字段包含列表中项目ID的顺序(例如:1,20,3),并在代码中添加了我需要按顺序获取项目的字段:

foreach (string itemId in shopping_list.itemsOrder.Split(',')) {
    item item = shopping_list.items.Where(i => i.id.ToString() == itemId).First(); 
    .....
}