Linq to sql 열 중복 제거 방법 은 무엇 입 니까?

2827 단어
예 를 들 어 데이터베이스 에 표 가 하나 있 고 두 개의 필드 가 있 습 니 다. ID User 1 소 백 2 소 홍 3 소 백
User 가 하 얀 반복 항목 으로 지정 되 어 있 는 것 을 필터 한 후, 나 는 ID User 1 하 얀 2 빨강 을 얻 고 싶다.
db. linq. customer. Distinct < customer > () 를 쓰 면;이렇게 하면 모든 줄 이 필터 와 일치 할 수 있 습 니 다. 어떻게 해 야 합 니까?
 
사용자 정의 비교 연산 자:
 1  //      
 2  public class MyComparer : IEqualityComparer<Customer>
 3     {
 4         public bool Equals(Customer x, Customer y)
 5         {
 6             return (x.User == y.User);
 7         }
 8 
 9         public int GetHashCode(User obj)
10         {
11             return obj.ToString().GetHashCode();
12         }
13     }
14 
15 
16 
17 //      
18 IEnumerable<Customer> CustomerDistinctList = db.Customers.ToList().Distinct(new MyComparer ());

 
 
Linq 의 Distinct 방법 을 사용 하여 서열 을 재 구성 하고 토론 합 니 다. LINQ 는 중복 되 는 데이터 (특정한 필드 에 중복 되 는 데이터 가 있 음) 를 제거 하고 linq 조회 결 과 를 재 처리 합 니 다.토론, LINQ 는 중 복 된 데이터 (한 필드 에 중 복 된 데이터 가 있 음) 를 제거 하 는 Distinct 방법 입 니 다. 다음 종 류 를 쓴 다음 LINQ 의 조회 문 구 를 추가 합 니 다. Distinct (new MyComparer ();검색 결과 이름 이 같은 줄 은 존재 하지 않 습 니 다.컴 파일 이 통과 되 었 으 나, 그것 을 사용 하면 "연산 자" Distinct "를 조회 하 는 데 사용 할 리 셋 은 지원 되 지 않 습 니 다." 라 고 잘못 알 립 니 다.

좋은 웹페이지 즐겨찾기