class Employee
{
public string EmployeeId;
public UserGroup[] UserGroups;
public Department Department;
public List<Address> Address;
}
class UserGroup
{
public int GroupId;
public string GroupName;
public string UserName;
public string Password;
}
public class Department
{
public int DeptId;
public string DeptName;
}
public class Address
{
public string Street;
public string ZipCode;
public decimal Latitude;
public decimal Longitude;
}
/// <summary>
/// This method should loop and read all the properties of Employee object and and assign value to that property
/// Ex: if propertyName is EmployeeId, propertyValue must be assigned to it.
/// Ex: if propertyName is GroupName, propertyValue must be assigned to it.
/// Ex: if propertyName is DeptName, propertyValue must be assigned to it.
/// Ex: if propertyName is Latitude, propertyValue must be assigned to it.
/// </summary>
/// <param name="obj"></param>
/// <param name="propertyName"></param>
/// <param name="propertyValue"></param>
public static AssignValueToProperty(Employee obj, string propertyName, string propertyValue)
{
//Implementation Pending
}
EmployeeオブジェクトPropertyNameとPropertyValueを指定すると、すべての内部オブジェクトのプロパティをループし、そのプロパティに値を割り当てることができます。誰も私にこれを手伝ってもらえますか?前もって感謝します。オブジェクト内にあるオブジェクトのすべてのプロパティを取得します。
このシナリオでは、Sriが作成した4つのクラスに4つの機能があります。この1つの方法ですべてのクラスを処理する方法はありますか?つまり、メソッド "AssignValueToProperty"で "Employee"クラスを制限せずに、すべてのクラスに対してこのメソッドを使用するということです。 –
私の前提として、名前空間の下にある任意のクラスのインスタンスを作成し、上ですでに説明したように、リフレクションを通じてそのプロパティを設定できる動的関数を記述したいとします。これを行うには、タイプtype = Type.GetType( "Employee"、true);オブジェクトobjEmp = Activator.CreateInstance(type);を実行してください。希望が役立ちます。 –
私は自分の答えを更新し、新しいメソッド定義も追加しました。 –