12

DisplayedDataクラスがあります...

  public class DisplayedData
  {
    private int _key;
    private String _username;
    private String _fullName;
    private string _activated;
    private string _suspended;


    public int key { get { return _key; } set { _key = value; } }
    public string username { get { return _username; } set { _username = value; } }
    public string fullname { get { return _fullName; } set { _fullName = value; } }
    public string activated { get { return _activated; } set { _activated = value; } }
    public string suspended { get { return _suspended; } set { _suspended = value; } }
  }

そして、このクラスのオブジェクトを配列に入れて、このクラス内のすべてのオブジェクトをString[]に変換したいと思います。

私は持っています..

DisplayedData _user = new DisplayedData();
String[] _chosenUser = _user. /* Im stuck here :)

または、内部のすべての項目が異なるデータ型の変数で構成されている配列を作成して、整数が整数のままで、文字列も維持できるようにすることはできますか?

4

1 に答える 1

22

「自分の手で」アレイを作成できます(アレイチュートリアルを参照)。

String[] _chosenUser = new string[] 
{ 
    _user.key.ToString(), 
    _user.fullname,
    _user.username,
    _user.activated,
    _user.suspended
};

または、 Reflection(C#プログラミングガイド)を使用することもできます。

_chosenUser = _user.GetType()
                    .GetProperties()
                    .Select(p =>
                        {
                            object value = p.GetValue(_user, null);
                            return value == null ? null : value.ToString();
                        })
                    .ToArray();
于 2012-12-19T03:04:21.407 に答える