문제

저는 LINQ에서 SQL을 처음 사용합니다. 달성하고 싶은 것은 여러 필드의 조합 인 엔티티 클래스에서 단일 읽기 전용 속성을 만드는 것입니다. 성.

.designer.cs 파일을 변경하여 수행하는 방법을 알 수 있지만 만지지 않아야한다는 것을 알고 있습니다.

동적 데이터에서 여러 열이 아닌 단일 열을 얻도록이 작업을 수행하려고합니다.

도움이 되었습니까?

해결책

여기의 요령은 a를 사용하는 것입니다 partial class; 새 .CS 파일을 만듭니다 같은 네임 스페이스에서 유형의 이름이 지정된 새 클래스 추가 :

namespace My.Data.Namespace {
    partial class Employee {
        public string Foo {
            get {return Forename + " " + Surname; } // etc
        }
    }
}

이것 결합합니다 원본 (생성 된) 클래스 파일. 이는 생성 된 엔티티 (데이터 컨텍스트 포함)에 추가 기능을 추가하는 일반적인 접근법입니다. LINQ-to-SQL에 의해 여러 부분 방법이 정의되고 사용되므로 "부분 방법"을보고 싶을 수도 있습니다.

한 가지주의 사항 : DBML이 호출되는 경우 MySystem.dbml, 그 다음에 피하다 생성 a MySystem.cs 파일 (아마도 부분 클래스의 경우); 코드 생성기에는이를 실패 할 수있는 버그가 있습니다. 그냥 다른 이름을 지정하십시오.

다른 팁

LINQ Select 문에서 다음과 같은 것을 사용하지 않는 이유는 무엇입니까?

select new {FullName = x.FirstName + " " + x.Surname};

구문이 100%인지 확실하지 않지만 아이디어를 확인하십시오.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top