클래스 목록이 있는데이 클래스에는 두 개의 열이 있습니다. 이제 특정 열을 사용하여 해당 클래스에서 중복 행을 제거하고 싶습니다. 첫 번째 열에서만 복제본을 제거하는 것과 마찬가지로, 전송 열에서만 제거하거나 둘 다에서 제거하십시오. 이렇게하려면 다음 코드를 사용하고 있습니다. 앞으로이 클래스에서 20-25 개의 열을 가질 것이므로이 함수에서 20-25 if 문을 추가해야하기 때문에이 프로세스를 수행하는 가장 좋은 방법이 있습니까?선택한 열을 기반으로 목록에서 중복 행을 제거 하시겠습니까?
public List<ContactTemp> RemoveDupliacacse(List<ContactTemp> ContactTempList, List<string> objcolumn)
{
List<ContactTemp> ContactTempListRemobdup = new List<ContactTemp>();
if (objcolumn.Contains("CITY"))
{
ContactTempListRemobdup = ContactTempList.GroupBy(s => s.City).Select(group => group.First()).ToList();
}
if (objcolumn.Contains("STATE"))
{
ContactTempListRemobdup = ContactTempList.GroupBy(s => s.State).Select(group => group.First()).ToList();
}
return ContactTempListRemobdup;
}