2011-10-30 7 views
0

계산 클래스를 모델 클래스에 추가하는 방법.dbml의 모델에 계산 된 열을 추가하는 방법

I보기 두 모델을

,

  1. User
  2. City

UserCityID (FK의 contraint)와 City에 접속되고 CityNameCity 모델에

나는 계산 된 공동 란 User 모델에 .rdlcUser (dbml)에 접속 된 City 모델로부터의보고가 가치가없는 것 같습니다.

현재 모델에 새 속성을 추가하면 해당 모델을 사용하는 linq 쿼리가 실행될 때 오류가 발생합니다. 이 데이터베이스에서 User에서 CityName을 선택하려고 의미

잘못된 열 이름 'UserCityName'

.

감사합니다.

답변

3

LinqToSQL은 부분 클래스로 엔티티를 생성하므로 새 클래스를 추가하고 다음 코드를 추가하여 엔티티에 열을 추가 할 수 있습니다.

예 :

namespace YourEntityNameSpace 
{ 
    public partial class User 
    { 
     public string UserAdditionalText 
     { 
      get 
      { 
       // your code goes here 
      } 
     } 
    } 
} 

업데이트 :

  1. 이 솔루션 창에서 Model.dbml을 확장, 당신은 Model.dbml.layoutModel.designer.cs을 찾을 수 있습니다.
  2. 열기 Model.designer.cs, 데이터베이스의 자동 생성 클래스가 포함되어 있습니다.
  3. public partial class User을 검색하십시오. 이제 자동 생성 클래스가 부분 클래스라는 것을 알 수 있습니다. 이는 클래스를 별도의 파일로 정의 할 수 있음을 의미합니다. Read more
  4. 프로젝트에 새 클래스를 추가하려면 자동 생성 파일에서와 동일한 네임 스페이스와 클래스 이름을 사용하십시오.
  5. User 클래스에 추가 속성을 추가하면 자동 생성 클래스 내의 모든 속성과 멤버에 액세스 할 수 있습니다.
+0

dbml 디자이너에서 모델을 만들고 DBML 파일에 자동 생성 모델 클래스가 있습니다. 모델 클래스에서 수동으로 수행 한 변경 사항은 향후 dbml 디자이너에서 변경 될 때 손실되지 않습니다. –

+0

물론, 자동 생성 모델 클래스를 볼 수 있습니다. 프로젝트에 새로운 클래스를 추가 한 다음 네임 스페이스를 모델의 네임 스페이스 (내 대답의 'YourEntityNameSpace')로 변경하면됩니다. – Ekk

+0

그래서 다른 네임 스페이스 아래에 별도의 클래스'User'를 만들겠습니까? –

관련 문제