2012-07-22 3 views
0

Mobile의 세부 정보를 렌더링하는 하나의 Asp.net MVC3 페이지가 있습니다. 이 페이지는 주석 모델을 사용하여 렌더링되는 주석 양식도 호스팅합니다. Name이라는 하나의 필드, 즉 Mobile.Name 및 Comment.Name은 두 모델에서 공통적으로 사용됩니다.ASP.Net MVC 양식 필드가 자동으로 다른 모델 필드 값으로 채워집니다.

마지막 출력에는 항상 Comment.Name 텍스트 상자에 Mobile.Name 값이 입력되어 있습니다. 왜 이런 일이 일어나는지 확신 할 수 없습니다.

정확한 문제는 아래 링크에서 볼 수 .. 코멘트 탭

을 확인

problem url

편집 코멘트 양식 뭔가 아래와 같이하는 부분도 사용 렌더링 :

@using (Ajax.BeginForm("Savecomment", new AjaxOptions() { UpdateTargetId = "FormContainer" , OnSuccess = "$.validator.unobtrusive.parse('form');" })) 
{ 
     @Html.HiddenFor(m => m.MobileId) 
     <div class="row"> 
     <div class="five columns"> 
      <label >Your name:</label> 
      @Html.TextBox("Name"," ") 
      @Html.ValidationMessage("Name") 
     </div> 
     </div> 
+1

코드가 도움이 될 것입니다. – Rab

+1

컨트롤러 코드 또는 전체보기 코드가있어 추측이 가능합니다. –

+0

자세한 정보가 필요합니다. 전체 모델이 정확히 어떻게 정의됩니까? 모바일과 코멘트 모두 어떻게 렌더링하고 있습니까? –

답변

1

문제는 부분 뷰 렌더링 방법과 관련이 있습니다. 모바일 및 댓글을 모두 포함하는 상위 모델이 있다고 가정합니다. 코멘트 모델을 부분 뷰로 전달하고 있습니까? 이 때문에 부분 뷰는 기본 모델 인 것처럼 필드의 이름을 렌더링합니다.

EditorTemplate을 사용하여 부분보기가 아닌 설명 및 모바일을 렌더링하는 것이 좋습니다. 편집기 템플릿은 부분 뷰보다 컨텍스트를 더 잘 알고 있습니다.

+0

설명을위한 Mystere Man에게 감사드립니다. 내 접근 방식은 언급 한 것과 매우 유사합니다. 나는 하나의 모바일 모델을 가지고 있는데, 여기에는 일련의 주석 객체들이 들어있다. – geekonweb

관련 문제