Silverlight中,网格,MVC,HTTP帖子(Silverlight, Grids, MVC

2019-10-21 04:55发布

我试图创建一个使用Asp.Net MVC 2和Silverlight(特别是从数据库显示信息,并允许用户更新信息网格)可编辑网格。

到目前为止,我已经成功地把Silverlight的网格上的一个视图,使用这种技术

但是我没有从银光栅获得更新数据的方式。 反正是有获取这些值回发到我的控制器?

我是很新,Asp.Net MVC,我真的只使用Silverlight入门。

谢谢你的帮助!

Answer 1:

你需要做的第一件事是序列化回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。



文章来源: Silverlight, Grids, MVC, HTTP Post