Saya adalah pengembang Java, baru mengenal .NET. Saya sedang mengerjakan proyek .NET MVC2 di mana saya ingin memiliki tampilan parsial untuk membungkus widget. Setiap objek widget JavaScript memiliki objek data JSON yang akan diisi oleh data model. Kemudian metode untuk memperbarui data ini terikat dengan peristiwa ketika data diubah di widget atau jika data itu diubah di widget lain.
Kodenya kira-kira seperti ini:
MyController
:
virtual public ActionResult DisplaySomeWidget(int id) {
SomeModelView returnData = someDataMapper.getbyid(1);
return View(myview, returnData);
}
myview.ascx
:
<%@ Control Language="C#" Inherits="System.Web.Mvc.ViewUserControl<SomeModelView>" %>
<script type="text/javascript">
//creates base widget object;
var thisWidgetName = new Widget();
thisWidgetName.updateTable = function() {
// UpdatesData
};
$(document).ready(function () {
thisWidgetName.data = <% converttoJSON(model) %>
$(document).bind('DATA_CHANGED', thisWidgetName.updateTable());
});
</script>
<div><%:model.name%></div>
Apa yang saya tidak tahu adalah bagaimana mengirim data sebagai SomeModelView
dan kemudian dapat menggunakannya untuk mengisi widget serta mengubahnya menjadi JSON. Saya telah melihat beberapa cara sederhana untuk melakukannya di controller tetapi tidak dalam tampilan. Saya pikir ini adalah pertanyaan mendasar, tetapi saya sudah mencoba selama beberapa jam untuk menjadikannya apik.