我試圖找到重構我的代碼的方式,但不知道如何做到這一點。C#使用設計模式重構不同細節的相同動作
例如,我們有幾類
class A {
string name;
int year;
}
class B {
long id;
string code;
DateTime currentTime;
}
class C {
string lastname;
DateTime currentDate;
}
而後者我需要回到這些類列表,列表,列表中的對象列表,並將它們轉換成對象[] []。
對於每一個轉換我做同樣的
private Object[][] converAListToObjectArray(List<A> dataList)
{
long countRecords = dataList.Count();
const int countProperty = 2;
var arrayRes = new object[countRecords][];
for (int i = 0; i < countRecords; i++)
{
var arrayObjProperty = new object[countProperty];
arrayObjProperty[0] = dataList[i].Name;
arrayObjProperty[1] = dataList[i].Year;
arrayRes[i] = arrayObjProperty;
}
return arrayRes;
}
private Object[][] converBListToObjectArray(List<B> dataList)
{
long countRecords = dataList.Count();
const int countProperty = 3;
var arrayRes = new object[countRecords][];
for (int i = 0; i < countRecords; i++)
{
var arrayObjProperty = new object[countProperty];
arrayObjProperty[0] = dataList[i].Id;
arrayObjProperty[1] = dataList[i].Code;
arrayObjProperty[2] = dataList[i].CurrentTime;
arrayRes[i] = arrayObjProperty;
}
return arrayRes;
}
是否有可能單獨此皈依使用一些設計模式?
它不清楚你正試圖在這裏完成的..你試圖獲得一個通用的轉換列表到2D數組函數? – Sayse 2013-04-24 20:16:54
@Sayse我嘗試創建統一的功能,將列表中的任何對象轉換爲2d數組 – Ray 2013-04-24 20:22:40
爲什麼你想這樣做? – sidesinger 2013-04-24 20:25:31