2012-08-23 2 views
2

여러분, 누구든지 나를 도와 줄 수 또는 asp.net mvc 동작에 전달되는 개체의 배열을 포함하는 녹아웃 viewmodel 예를 지시 할 수 있습니까? 필자가 본 유일한 예제는 전달되는 문자열의 단순한 배열을 보여줍니다. 감사합니다.MVC 컨트롤러에 객체의 녹아웃 배열 전달

+0

지금까지 해보신 것은 무엇입니까? 데이터는 컨트롤러 액션, 코 뷰 모델과 어떻게 다릅니 까? 몇 가지 코드를 게시하십시오. – nemesv

+0

무엇을 시도 했습니까? 아마도 우리가 작업 할 수있는 코드를 제공 할 수 있으므로 마음을 읽지 않아도됩니다. – Gabe

+0

[Knockout MVC?] (http://knockoutmvc.com/)에 대해 알고 계세요 –

답변

4

입니다. 중첩 된 배열로 구성된 연락처 편집기입니다. [jsFiddle].

끼움 ASP.NET MVC 액션 연락이 클래스로 정의된다

public ActionResult SaveContacts(IEnumerable<Contact> contacts) 

처럼 보일 수 :

public class Number 
{ 
    public string type { get; set; } 
    public string number { get; set; } 
} 
: 번호는 클래스로 정의

public class Contact 
{ 
    public string firstName { get; set; } 
    public string lastName { get; set; } 
    public IEnumerable<Number> phones { get; set; } 
} 

example의 JavaScript 녹아웃보기 모델을 감안할 때. save 방법은 다음과 같이 표시 될 수 있습니다.

self.save = function() { 
    var jsonString = ko.mapping.toJSON(this.searchParams); 
    $.ajax({ 
     url: "/MyController/SaveContacts", 
     data: jsonString, 
     type: 'POST', 
     contentType: 'application/json', 
     dataType: 'json' 
    }); 
}; 
+0

Martin 감사합니다. 녹아웃 뷰 모델의 SaveContacts 게시 메소드가 어떻게 보이는지 보여 줄 수 있습니까? – mikelus

+0

물론입니다. 예제에서 save 메소드를 대체하기 위해 save 메소드를 내 대답에 추가했습니다. 이 예제를 살펴보십시오. http://knockoutjs.com/examples/contactsEditor.html –

관련 문제