1

내 viewmodel의 값 대부분이 반환되지만 모델 클래스를 업데이트 한 후에 데이터베이스의 다른 테이블에 연결된 값 중 두 개가 null 값을 반환하고, 비록 내가 그들을 어떻게 할당했는지는 변하지 않았다. 나는이 성명서에 문제가 있다는 것을 깨달았다.뷰에 null 값을 반환하는 ViewModel 문제

차량 모델과 제조사를 포함하지 않는다. 이 진술을 다음과 같이 변경하는 방법을 찾고 있습니다.

Vehicles = utc.Vehicles.Include(v => v.Model).Include(v => v.Model.Manufacturer).OrderByDescending(v => v.DateCreated).Take(10).ToList() 

그러나 오류가 발생하여 컴파일되지 않습니다.

누구든지 도와 줄 수 있습니까?

편집 여기 내 코드입니다. 모델 모델

public ActionResult Index() 
    { 
         var home = new HomeViewModel 
     { 
      latestVehiclesViewModel = new LatestVehiclesViewModel 
      { 
       Vehicles = utc.Vehicles.Include("Model").Include("Manufacturer") 
     .OrderByDescending(v => v.DateCreated) 
     .Take(10) 
     .ToList() 
      }, 

      searchViewModel = new SearchViewModel 
      { 
       Manufacturers = utc.Manufacturers.ToList(), 
       //Models = utc.Models.ToList(), 
      } 
     }; 
     return View(home); 
    } 

: 컨트롤러의 경우.

public class Model 
{ 
    public int ModelId { get; set; } 
    public int ManufacturerId { get; set; } 
    public string Name { get; set; } 
    public List<Vehicle> Vehicles { get; set; } 
    public Manufacturer Manufacturer { get; set; } 
} 
+0

'돌아 오는보기 (집);'집 '이란 무엇입니까? – haim770

+0

죄송합니다. –

답변

2

내 EF5 날() 포함 DbSet에 매개 변수로 식을 통과하는 것을 허용하지 않습니다.

오히려이 시도 :

Vehicles = utc.Vehicles.Include("Model").Include("Manufacturer") 
      .OrderByDescending(v => v.DateCreated) 
      .Take(10) 
      .ToList() 
+0

이것은 컴파일되었지만 새로운 오류가 발생했습니다 : 지정된 Include 경로가 유효하지 않습니다. EntityType 'UnderTrader.Models.Vehicle'은 'Manufacturer'라는 이름으로 탐색 속성을 선언하지 않습니다. –

+0

그러면 ... 아마도 'Manufacturer'라는 네비게이션 속성이 없을 것입니다.하지만 .edmx, 모델 클래스, dbcontext 클래스를 볼 수있는 유일한 사람이라는 것을 어떻게 알 수 있습니까? .... 귀하의 코드를 게시;) –

+0

내 코드를 지금 추가하는 중 ... –

0

내가 나 자신을 고정 ... 새로운 오류가 나는 ㅁ 베르나르의 답변을 수락, 그것은 ("Model.Manufacturer") 포함 했어야 내 잘못했다 ... 그게 내가 처음부터 이걸 얻을 수 있었던 이유 였지 ... 고마워.

관련 문제