2010-03-20 6 views
2

다른 이러한 코드LINQ는

public List<SearchItem> Search(string find) 
     { 


      return (from i in _dataContext.News where i.Text.Contains(find) select new SearchItem { ControllerAction = "test", id = i.Id.ToString(), LinkText = "test" }).ToList(); 
     } 

public struct SearchItem 
    { 
     public string ControllerAction; 
     public string LinkText; 
     public string id; 
    } 

답변

2
new SearchItem() {...} 

// 아무 .ToList() 또는 잘못이 무엇인지는 재산의 get/세트 클래스 (S/바 클래스를 필요로하지 않는 사용자 정의 개체로 선택), 당신은 단지 새로운 것이라고 말할 수있다

+0

당신은 ToList에 관해 explaine하고 get/set 할 수 있냐? – kusanagi

+0

ca n은 클래스가 아니라 구조체라는 것을 알기 때문에 클래스가 필요합니까? – kusanagi

+0

나는 빠른 응답의 기술을 배우고있다 ... 유일한 방법은 sig 메소드로 인해 ToList ()이다. 공용 멤버와 함께 struct를 사용할 수 있지만 "철학적 인 문제"이며 데이터 바인딩 및 버전 관리 옵션이 제한됩니다. 속성이있는 클래스는 공개 될 때 더 많은 "표준"입니다. {}를 통한 할당 외에도 ctor 메소드 (괄호 안)를 사용할 수 있습니다. 암시 적/명시 적 매개 변수없는 ctor를 사용하면 컬렉션 또는 일반 제약 조건에 사용되는 클래스에 유리합니다 (그러나 struct에는 암시 적 매개 변수없는 ctor가 필요합니다). 그것이 의미가있는 경우 구조체를 사용하십시오. –