2010-05-04 2 views
3

나는 usercontrol을 포함하는보기가 있습니다. 이 Model.General에 다시 매핑되지 않는 그들은 UserControl을에.Net MVC UserControl - RenderPartial 또는 EditorFor

<% Html.RenderPartial("GeneralStuff", Model.General, ViewData); %> 

내 문제는 UserControl을 모델의 값으로 잘 렌더링 것입니다하지만 난 값을 게시 할 때 편집 : 해당 UserControl을 사용하여 렌더링 . Request.Form에서 값을 찾을 수 있지만 MVC가이 값을 모델에 다시 매핑 할 수 있다고 생각했습니다.

내 UserControl을 :

<%@ Control Language="C#" Inherits="System.Web.Mvc.ViewUserControl<namespace.Models.GeneralViewModel>" %> 

<fieldset>   
    <div> 
     <%= Html.LabelFor(model => model.Value)%> 
     <%= Html.TextBoxFor(model => model.Value)%>    
    </div> 
</fieldset> 

내가 닷넷 MVC 2

어떤 도움

감사를 사용하고 있습니다!

+0

어떻게 값을 다시 모델로 보내려고합니까? 입력을 통해? – Ayo

+0

예, 입력 텍스트 요소입니다. 위의 내 코드 스 니펫 (<% = Html.TextBoxFor (model => model.Value) %> 참조) – Andreas

답변

2

문제가 해결되었습니다.

내 UserControl을가 렌더링됩니다

:

내 모델은 다음과 같습니다
<%= Html.EditorFor(model => model.General); %> 

:

public class TestEditViewModel 
{ 
    [UIHint("GeneralViewModel")] 
    public GeneralViewModel General { get; set; } 
} 

그리고 내 UserControl을이 조회수 -> Shared-> EditorTemplates 아래에 배치하고 이름이 "GeneralViewModel.ascx"

관련 문제