C#オブジェクトのプロパティとプロパティ値を取得C#オブジェクトのプロパティとプロパティ値を反射する

1709 ワード

しばらく書いていません
仕事が少し忙しいので、片付ける時間がありません.
エンティティークラス
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace WindowsFormsApplication1
{
    public class Contract
    {
        public string employeename { get; set; }
    }
}

 
属性と属性値の遍歴
 public void EachProperties()
        {
            Contract contract = new Contract { employeename = "Rikas" };
            Type type = contract.GetType();
            System.Reflection.PropertyInfo[] ps = type.GetProperties();
            foreach (PropertyInfo i in ps)
            {
                object obj = i.GetValue(contract, null);
                string name = i.Name;
            }
        }

もちろん属性のタイプを判断する方法もありますが、疲れた属性のタイプが別のクラスかどうかを判断する方法は見つかりません.他の方法があればコメントを歓迎します.
 
public void EachProperties()
        {
            Contract contract = new Contract { employeename = "Rikas" };
            Type type = contract.GetType();
            System.Reflection.PropertyInfo[] ps = type.GetProperties();
            foreach (PropertyInfo i in ps)
            {
                if (i.PropertyType == typeof(string))// 
                {
                    object obj = i.GetValue(contract, null);
                    string name = i.Name;
                }
            }
        }

 
みんなと分かち合う