現在使用している次のコードがあります....基本的に、このメソッドは各タスクに正しいブールフラグ(TRUE/FALSE)を割り当てます。ますます多くのタスクを追加する必要があるため、すべてのタスクに対応するために switch ステートメントを拡張する必要があることがわかります。
メソッドを小さく保つには、もっと簡単な方法が必要です。
コード: (命名規則は忘れてください。投稿用に変更されています)
public ClassStructure.User AssignTaskStatusToUser(ClassStructure.User,
List<ClassStructure.Tasks> TaskStatus)
{
foreach (ClassStructure.Tasks data in TaskStatus)
{
string Task_CallID = data.Task_Call_ID;
switch (Task_CallID)
{
case ClassStructure.Tasks_CallIDs_Strings.TASK1:
User.TASK1 = data.Task_Flag;
break;
case ClassStructure.Tasks_CallIDs_Strings.TASK2:
User.TASK2 = data.Task_Flag;
break;
case ClassStructure.Tasks_CallIDs_Strings.TASK3:
User.TASK3 = data.Task_Flag;
break;
}
}
return User;
}
ClassStructure.Tasks_CallIDs_Strings = タスクの文字列表現
data.Task_Flag = ブール値
User.TASKX = ブール値
どんなフィードバックでも大歓迎です。簡単な解決策があると確信しています。