(게시물이 너무 길기 때문에 내가 당신의 대답에 대해 언급 할 수 없습니다 griegs)
내가 지금 성경으로 선식 급강하 여행을 사용하고 있습니다.
분명히 분명히 할 수 있을지 의심 스럽습니다.
편집보기
클라이언트 부분보기 세부
<%@ Control Language="C#" Inherits="System.Web.Mvc.ViewUserControl<EyePeak.ViewModel.Service.EditServiceViewModel>" %>
<% if(Model.SelectedClient != null) { %>
<tr>
<%Html.LabelFor(model => model.SelectedClient.Name);%>
<%= Html.DropDownList("clientAddresses", Model.SelectedClient.Addresses.Select(i => new SelectListItem { Value = i.Id.ToString(), Text = i.Name}))%>
</tr>
<% } %>
CONTROLER :
(...)
public ActionResult New()
{
var service = new EyePeak.Data.Model.Service();
return View("Edit", this.GetEditViewModel(service));
}
(...)
public ActionResult SearchClientAddresses(string clientID)
{
var selectedClient = this._clientService.GetClient(Convert.ToInt32(clientID));
var model = new EditServiceViewModel
{
SelectedClient=selectedClient
};
return PartialView("clientDetails", model);
}
jQuery를 :
Sys.Application.add_load(
function()
{
$("#clientId").bind("change", showClientInfo);
}
);
function showClientInfo()
{
var id = $("#clientId").val();
$("#clientSearch .results table").fadeOut();
$("#clientSearch .results").slideUp("medium", function() {
$.ajax(
{
type: "GET",
url: "/Service/SearchClientAddresses",
data: "clientID=" + escape(id),
dataType: "html",
success: function(result) {
var dom = $(result);
$("#clientSearch .results").empty().append(dom).slideDown("medium");
}
});
});
}
내 질문은 : 부분보기에 전달하는 난 단지 클라이언트 정보를 사용하여 새 EditServiceViewModel를 작성해야합니까? 현재 ViewModel을 업데이트하고 부분 뷰로 전달할 수 없습니까?
이 특정보기에서 길게 부분보기를 만들어야하므로 각각에 대한보기 모델을 만들어야합니까?
어쩌면 개념을 잘 이해하지 못했습니다.
다시 도움 주셔서 감사합니다.