2014-01-17 5 views
1

내 데이터의 첫 번째 .edmx 파일에 부분 클래스 질문이 있습니다. ViewModel을 만들어서 내보기를 채우고 내 질문에 양식을 제출했습니다.예기치 않은 데이터를 반환하는 ViewModel

제출 한 ViewModel이 정상적으로 작동하는 동안에는 ViewModel을 사용하여 예상치 못한 결과가 발생합니다. 디버깅하는 동안 나는 뷰 모델은 또한 내가 나 컨트롤러가 모두 처리하는 방법을 알고

{System.Data.Entity.DynamicProxies.Question_AC5369E927D7DA13E53B81D39BBD14BEBF05146E3CC12E147A7CB4C32F869EF9}

를 반환 내가 그러나 필요로하는 모든 데이터를 볼 수 있습니다. 내가 말했듯이, 그것은 또한 다른 모든 필수 필드를 반환하지만,이 첫 번째 이상한 반환을 깨고있다.

비슷한 결과가 있습니까?

요청에 따라, 내 모델보기;

public class GetQuestionViewModel 
    { 
    public class Question { 
    public Question Questions { get; set; } 
    public Response Response { get; set; } 
    } 
    public GetQuestionViewModel() 
    { 
     this.QuestionOptions = new HashSet<QuestionOption>(); 
     this.Responses = new HashSet<Response>(); 
    } 
    [Key] 
    public int Id { get; set; } 
    public int PageNumber { get; set; } 
    public string Question1 { get; set; } 
    public int QuestionTypeId { get; set; } 
    public Nullable<int> LinkedTo { get; set; } 
    public Nullable<int> Options { get; set; } 
    public Nullable<int> QuestionRanking { get; set; } 

    public virtual ICollection<QuestionOption> QuestionOptions { get; set; } 
    public virtual QuestionType QuestionType { get; set; } 
    public virtual ICollection<Response> Responses { get; set; } 
    } 

그리고 액션;

 [HttpGet] 
    public ActionResult ViewQuestion(int? id) 
    { 
     if (id == null || id == 0 || id > 13) 
     { 
      id = 8; 
     } 

     Question question = db.Questions.Find(id); 

     if (question == null) 
     { 
      return HttpNotFound(); 
     } 
     return View(question); 
    } 
+0

데이터를 JSON으로 반환 하시겠습니까? 게으른로드를 사용합니까? 필요합니까? – lalibi

+0

아직 그 단계에 이르지 못했지만 나는있을 것입니다. 이것은 내 첫 번째 MVC 프로젝트이며 여전히 기본 사항으로 어려움을 겪고 있습니다. – Alex

+0

뷰 모델을 표시하고 가능한 경우 EF 컨텍스트에서 뷰 모델을 작성하는 컨트롤러 코드 – MikeSW

답변

0

정상적으로 보이는 것은 지연로드가 작동하도록 동적으로 생성 된 프록시입니다.

context.ContextOptions.ProxyCreationEnabled = false; 

EDMX 디자이너에서이 기능을 전역 적으로 해제 할 수도 있습니다.

+0

어디에서 추가할까요? 뷰 모델에? 강하게 입력 된 값을 열심히로드 할 수 있습니까? 이 질문에 사과와 오렌지를 섞어 놓았습니까? – Alex

+0

tt 파일에서 전역 적으로이 기능을 사용하지 않도록 설정 한 곳을 찾았지만 제대로 작동하지 않는 것으로 나타 났으며 여전히 동일한 오류가 발생하고 있습니까? – Alex