我试图创建一个使用Asp.Net MVC 2和Silverlight(特别是从数据库显示信息,并允许用户更新信息网格)可编辑网格。
到目前为止,我已经成功地把Silverlight的网格上的一个视图,使用这种技术
但是我没有从银光栅获得更新数据的方式。 反正是有获取这些值回发到我的控制器?
我是很新,Asp.Net MVC,我真的只使用Silverlight入门。
谢谢你的帮助!
我试图创建一个使用Asp.Net MVC 2和Silverlight(特别是从数据库显示信息,并允许用户更新信息网格)可编辑网格。
到目前为止,我已经成功地把Silverlight的网格上的一个视图,使用这种技术
但是我没有从银光栅获得更新数据的方式。 反正是有获取这些值回发到我的控制器?
我是很新,Asp.Net MVC,我真的只使用Silverlight入门。
谢谢你的帮助!
你需要做的第一件事是序列化回JSON: -
(假设你的的ObservableCollection使用ToArray的() MyItem
对象)
public string SerialiseToJSON(MyItem[] myItems)
{
//Create a stream to serialize the object to.
MemoryStream ms = new MemoryStream();
// Serializer the User object to the stream.
DataContractJsonSerializer ser = new DataContractJsonSerializer(MyItem[]);
ser.WriteObject(ms, myItemsArray);
byte[] json = ms.ToArray();
ms.Close();
return Encoding.UTF8.GetString(json, 0, json.Length);
}
现在,您可以使用WebClient
类JSON字符串送回去。
WebClient web = new WebClient();
web.UploadStringAsync(new Uri("/yourcontroller/jsonReceiver", UriKind.Relative));
现在,我不知道MVC那么好,但我相信你可以标注一个控制器操作方法,以便它可以接受JSON数据的HTTP POST,它会为你做的deserialisation。