常規屬性,自動實現屬性和字段都各有特點:
1:常規屬性功能最全,靈活必也最強。
案例:項目開發中,有時會發現兩個系統之間的某些類中屬性有部分相同有部分不同,調用時需要把一 個類的相關屬性賦值給另一個類的相同屬性,如果屬性的數目較少,我們可以一個一個手工來寫,但如果 較多,或者屬性裡面中包含復雜屬性,我想這是比較煩人的事,有了屬性就會變得更加簡潔。
//轉換公共屬性
PropertyInfo[] proAs = s3.GetType().GetPropertIEs();
PropertyInfo[] proBs = s4.GetType().GetPropertIEs();
if (proAs != null && proAs.Length > 0 && proBs != null && proBs.Length > 0)
{
foreach (PropertyInfo proA in proAs)
{
if (!proA.CanRead) continue;
foreach (PropertyInfo proB in proBs)
{
if (proB.Name.ToLower() == proA.Name.ToLower() &&
proB.PropertyType == proA.PropertyType &&
proB.CanWrite)
{
proB.SetValue(s4, proA.GetValue(s3, null), null);
}
}
}
}
2:自動實現屬性較常規屬性代碼簡潔,但靈活性不夠(get,set訪問器中不能包含邏輯代碼)。在數據 的存儲和讀取上功能和字段相同。
3:字段,代碼最少,但靈活性最差。如果字段在賦值和取值時並無邏輯處理,可以選擇字段。字段結合 方法的使用可以和常規屬性功能相比。