组合两个列表对象以形成List <string>

Din*_*esh 1 c# linq asp.net-mvc list

我有一个包含多个字段和两个对象的列表,我的要求是List<string>从'/'分隔的对象形成一个.

例如:list contains

  • 对象1:

    • object1 [0] =测试
    • object1 [1] = test2
  • 对象2:

    • object2 [0] =名称
    • object2 [1] =名称2;

我应该以test/name,test2/name2的格式获取字符串;


确切代码:

我正在尝试使用List中的值注入器注入模型

 var resultList = vReturn.ToList();
        List<UserSearchedModel> models = new List<UserSearchedModel>();
        resultList.ForEach(u =>
            {
                UserSearchedModel model = new UserSearchedModel();
                model.InjectFrom(u);
                model.Roles = string.Join(",", ObjectHelper.GetPropertyValue<IList<string>>(u, "Roles", null));
                models.Add(model);
            });

        return models;
Run Code Online (Sandbox Code Playgroud)

我的列表包含两个对象,我想插入以分离的角色/组代码格式查看模型.Role1/GroupCode1,Role2/GroupCode2

Pet*_*iho 5

如果没有一个好的,最小的,完整的代码示例,就不可能提供一个确保满足您需求的解决方案.但是,如果我理解正确,您可以通过某种方式获得两个单独的集合,并且您希望将这些集合合并到一个List<string>对象中.

在这种理解中,这两个对象最初包含在它们自己的列表中的事实似乎无关紧要,所以我将忽略这一方面.

假设我理解正确,您可能想要使用该Enumerable.Zip()方法.例如:

List<string> Merge(IEnumerable<string> source1, IEnumerable<string> source2)
{
    return source1.Zip(source2, (s1, s2) => s1 + "/" + s2).ToList();
}
Run Code Online (Sandbox Code Playgroud)

使用这样:

List<string> mergedList = Merge(object1, object2);
Run Code Online (Sandbox Code Playgroud)