2014-02-05 53 views
1

我從SAP獲得了一個包含很多結構的列表([index] [structures with items]。我的程序使用了這個項目中的一個子集,我搜索了一個解決方案來保存這個子項在公共setter和getter一個對象。我的一種映射將列表中的子集保存到對象中

第一個想法

我可以創建一個大的開關的保存我的專輯每個項目的對象,但我認爲這不是一個好主意。

第二個想法

屬性名稱等於列表中的名稱。我與PropertyInfo[] prop = typeof(my object).getProperties()所有公共二傳手和獲得者。現在我檢查prop.Name.Equals(item.name)並保存它。

問題是,我的對象然後無法訪問的屬性。

+0

可以大家分享一個例子嗎? –

回答

0

A switch如果你確切地知道你想要什麼樣的屬性並且不想要,可以是一個好主意。這使得單元測試變得簡單,並確保您的程序結構是硬編碼的 - 這是一件好事!

另一種方法是使用一個簡單的Dictionary

var myDictionary = new Dictionary<string, string>(); 

// ... 

if (!myDictionary.ContainsKey("Property from SAP")) 
{ 
    myDictionary.Add("Property from SAP", String.Empty); 
} 

// ... 

myDictionary["Property from SAP"] = "Value from SAP"; 
相關問題