我有以下用户列表:
var roles = userRoleRepository.Get(q => q.user_id.Equals(username, StringComparison.InvariantCultureIgnoreCase));
角色有两个属性,一个是(ID,Name),如何在我获得列表后添加一个集合?因为角色,没有添加或添加范围,我想添加(“124”,“杰克“)
答案 0 :(得分:1)
在我看来,UserRoleRepository
是您(公司)自己的一个类的对象。这个类有一个Get
函数,它有一些返回值。
唉,你忘了告诉我们返回的类型。从代码片段中,我假设返回的对象不是一个对象序列,而是一个单个对象,可能是您称之为UserRole
的对象。返回的UserRole
是userRoleRepository
中user_id
的{{1}},其等于某个字符串userName
。
由于Get
函数只返回一个UserRole
,因此向这个对象添加集合不是一个有意义的操作,除非此UserRole
具有添加集合的功能。但正如你告诉我们的那样:你的UserRole
没有这样的功能。
或者您在描述中有点草率,是否要将UserRoles
添加到UserRoles
的{{1}}集合中,这将是您的Get
函数的返回?唉:您没有给我们定义Get
函数的返回值。
如果Get
返回一个UserRole
,并且您想要将此获取的UserRole
与您自己的UserRoles
序列组合在一起,请执行以下操作:
UserRole fetchedUserRole = userRoleRepository.Get(...);
List<UserRole> userRoles = new List<UserRole>();
userRoles.Add(fetchedUserRole);
return userRoles.Concat(myOwnUserRoleCollection);
如果另一方面Get
返回USerRole
的序列,则代码会更简单:
IEnumerable<UserRole> fetchedUserRoles = userRoleRepository.Get(...);
return fetchedUserRoles.Concat(myOwnUserRoleCollection);