현재 각 컬렉션에 몇 개의 항목이 있는지에 따라 CategoryId를 설정하는 else 문이 여러 개 있습니다. 예를 들어디자인 패턴을 선택할 때 도움이 필요합니다.
,
public class TeamWork
{
public string EmployeeName { get; set; }
public int CategoryId { get; set; }
}
public class BLL
{
public void SetCategoryId(ICollection<TeamWork> Converted, ICollection<TeamWork> Sourced)
{
if (Converted.Count == 1 && Sourced.Count == 1)
{
if (String.Compare(Sourced.First().EmployeeName, Converted.First().EmployeeName) == 0)
{
// set category id to 1
Converted.First().CategoryId = 1;
Sourced.First().CategoryId = 1;
}
else
{
// set category id to something
}
}
else if (Sourced.Rows.Count == 1 && Converted.Rows.Count > 1)
{
// set category id to something
}
// more if else statements...
}
}
나는 몇 가지 디자인 패턴을 적용하여 아마도이 할 수있는 더 나은 방법이 있다고 생각. 어떤 제안? 감사!
Chain of Command는 – simendsjo
에 적합 할 수 있습니다. 두 개의 필드를 설정하는 데 과도한 디자인 패턴이있을 수 있습니다 ... –
예 : 2 필드 만 디자인하면 패턴이 과도합니다. 하하. 현재 약 12 개의 else 문장이 있습니다. – dm80