简体   繁体   English

如何将对象转换为字符串列表?

[英]How to convert object to string list?

I want to get two values by using linq select query and try to convert object to string list. 我想通过使用linq select查询来获取两个值,然后尝试将对象转换为字符串列表。 I am trying to convert list<object> to list<string> . 我正在尝试将list<object>转换为list<string> The code as below. 代码如下。 I got the error when I convert object to string list : return returnvalue = (List)userlist; 将对象转换为字符串列表时出现错误: return returnvalue =(List)userlist;

public List<string> GetUserList(string username)
{
    List<User> UserList = new List<User>();
    List<string> returnvalue = new List<string>();
    try
    {
        string returnstring = string.Empty;
        DataTable dt = Library.Helper.FindUser(username, 200);
        foreach (DataRow dr in dt.Rows)
        {
            User user = new User();
            spuser.id = dr["ID"].ToString();
            spuser.name = dr["Name"].ToString();
            UserList.Add(user);
        }
    }
    catch (Exception ex)
    {
    }

    List<SharePointMentoinUser> userlist = UserList.Select(a => new User { name = (string)a.name, id = (string)a.id }).ToList();

    **return returnvalue = (List<string>)userlist;**
}

Select as array then use SelectMany . 选择为数组,然后使用SelectMany

return Userlist
     .Select(u => new []{ u.name.ToString(), u.id.ToString() })
     .SelectMany(u => u)
     .ToList();

This will return a list that contains user's name and id for all users in UserList . 这将返回一个列表,其中包含UserList所有用户的用户名和ID。

        List<User> UserList = new List<User>();
        User usr = new User();
        usr.id = "1";
        usr.name = "name1";

        User usr2 = new User();
        usr2.id = "2";
        usr2.name = "name2";

        UserList.Add(usr);
        UserList.Add(usr2);
        List<string> userlist = UserList.Select(a => a.id.ToString() +","+ a.name.ToString()).ToList();

        foreach (string str in userlist)
        {
            Console.WriteLine(str);

        }

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM