Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/asp.net/34.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ajax/6.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# 更新列表<;字符串>;使用linq C的值#_C#_Asp.net_List_Linq_Model View Controller - Fatal编程技术网

C# 更新列表<;字符串>;使用linq C的值#

C# 更新列表<;字符串>;使用linq C的值#,c#,asp.net,list,linq,model-view-controller,C#,Asp.net,List,Linq,Model View Controller,我有一个字符串列表,如果列表中的某些项与单独的对象列表中的字符串值匹配,我希望迭代并更改这些值 用户将电子邮件地址输入到包含EventMember列表的事件对象中: List<string> EventMembers 最好是定义一个成员的初始集合,这样在foreach仍在运行时就不会一直修改列表。然后,您可以检查EventMembers是否包含用户名,然后通过使用索引访问该值来替换用户名 var allUsers = _userManager.Users; List<stri

我有一个字符串列表,如果列表中的某些项与单独的对象列表中的字符串值匹配,我希望迭代并更改这些值

用户将电子邮件地址输入到包含EventMember列表的事件对象中:

List<string> EventMembers

最好是定义一个成员的初始集合,这样在foreach仍在运行时就不会一直修改列表。然后,您可以检查
EventMembers
是否包含用户名,然后通过使用索引访问该值来替换用户名

var allUsers = _userManager.Users;
List<string> Members;
foreach (var a in allUsers)
{
     if (@event.EventMembers.Contains(a.UserName))
     {
         var index = @event.Members.IndexOf(a.UserName);
         Members[index] = a.FirstName + a.LastName;
     }
}
EventMembers = Members;
var allUsers=\u userManager.Users;
成员名单;
foreach(诱惑中的a类风险)
{
if(@event.EventMembers.Contains(a.UserName))
{
var index=@event.Members.IndexOf(a.UserName);
成员[索引]=a.FirstName+a.LastName;
}
}
EventMembers=成员;

不要使用LINQ,只需使用
for
循环即可。正常的LINQ将无法工作,因为您将得到“集合更改”异常。这是有效的。我不需要定义初始集合。我只是在If块中使用了代码,它工作得很好。谢谢
var allUsers = _userManager.Users;
List<string> Members;
foreach (var a in allUsers)
{
     if (@event.EventMembers.Contains(a.UserName))
     {
         var index = @event.Members.IndexOf(a.UserName);
         Members[index] = a.FirstName + a.LastName;
     }
}
EventMembers = Members;