次のコードを単純化する方法はありますか? supportListはコンストラクタからなっているオブジェクトです。ここ異なるリストを持つC#if/else文を簡略化する<
public void FillCollection(object supportList)
コード:
if (supportList is List<Bank>)
{
foreach (var temp in supportList as List<Bank>)
{
//code here
}
}
else if (supportList is List<Currency>)
{
foreach (var temp in supportList as List<Currency>)
{
//code here
}
}
else if (supportList is List<Amount>)
{
foreach (var temp in supportList as List<Amount>)
{
//code here
}
}
EDIT 1:すべてのforeachの部品は、このルックス
foreach (var temp in supportList as List<Bank>)
{
string yesno;
if (temp.Id == CurrentId)
{
yesno = "" + yes;
}
else
{
yesno = "" + no;
}
CollectionSupport.Add(new SupportModel { Id = temp.Id, Name = temp.Name,
Code = temp.Code, YesNo = "" + yesno });
}
あなたの//コードは、3つのステートメントブロックすべてで同じですか? – Amit
なぜジェネリックではないのですか? –
はい。あなたはこれをしないことでこれを単純化します。あなたがするべきことは、われわれは言うことができない。おそらく[編集]あなたの目標はここに何を記述する? – Will