6
Geçiş Kompleks JSON bir MVC 3 Eylem
Locations
eylem parametre modeline doldurulur MVC 3'te bir eyleme karmaşık bir JSON nesnesi iletir çalışırken ben bazı garip sonuçlar alıyorum
için Nesne, ancak bu ad ve konum değil.
ko.toJS(testViewModel)
yaparsam, ad ve konum var, ancak konumlar boş?
kullanıyorum knockout.js:
var testViewModel = {
Name: ko.observable("Joe Bob"),
Locations: ko.observableArray([
{ ID: 1, Name: "Salem, OR" },
{ ID: 2, Name: "Big Bear Lake, CA" },
{ ID: 3, Name: "Big Bear City, CA" }
]),
Position: ko.observable("Manager")
}
jQuery ajax ile onu gönderme:
$.ajax({
url: "/ClaimsAuthority/Home/TestIt",
type: "POST",
data: ko.toJSON(testViewModel),
success: function (data, status, xhr) {
//ko.applyBindings(data);
}
});
MVC Eylem:
<HttpPost()>
Public Function TestIt(model As TestModel) As ActionResult
Return Json(model)
End Function
Modeller:
Public Class TestModel
Public Property ID As Integer
Public Property Name As String
Public Property Locations As ICollection(Of LocationModel)
Public Property Position As String
End Class
Public Class LocationModel
Public Property ID As Integer
Public Property Name As String
Public ReadOnly Property DisplayText As String
Get
Return String.Format("({0}) {1}", ID, Name)
End Get
End Property
End Class
Teşekkür Darin !! İşe yaradı! Yakında başka bir bira alacağım! – Sam
Karmaşık modelleri bu şekilde ayrıştırmak ve bunları yazılan nesneler olarak denetleyici eylemine almak mümkün mü? Çünkü aynı şeyi yapmaya çalışıyorum ama nesnenin koleksiyonu, örneklerle birlikte, boş özellik değerleri ile birlikte gelir. –
@GustavoRubio, evet, rasgele karmaşık nesneleri ve koleksiyonları kullanmak mümkündür. JSON serileştirilemediği için yalnızca dairesel nesne referansları desteklenmez. –