带有二进制xml的Silverlight应用程序

时间:2010-09-22 12:45:42

标签: silverlight asp.net-mvc-2 silverlight-3.0 xml-serialization

我的silverlight + ASP.NET MVC应用程序执行以下操作:

1)Silverlight客户端通过HttpWebRequest发送请求。

2)ASP.NET MVC连接到SQL Server数据库(存储过程)  然后获取XML数据然后将该原始xml发送到客户端 (没有Web服务或WCF)。

3)Silverlight客户端接收xml并使用XmlSerializer类对其进行反序列化。

4)操作反序列化对象,然后序列化并发送回服务器。

5)ASP.NET MVC接收xml并直接将其发送到Database(存储过程)  它被翻新并保存到适当的表格中。

这是一个可接受的架构吗?这种方法有什么问题?此外,使用SL 3似乎有一个使用二进制XML的选项,但是我没有看到如何在没有WCF的情况下使用它的好信息。我发现WCF很重,所以故意避免它。对我来说,基于ASP.NET MVC的RESTful架构似乎更具吸引力。以上描述可能不是RESTful,但我认为非常接近。欢迎任何想法。

1 个答案:

答案 0 :(得分:0)

我认为WCF实际上会简化场景并打开许多可能你现在不需要的选项,但在将来可能会有用(例如,如果你决定添加另一种客户端,或者决定实施一些安全机制)。

“二进制XML”绑定与Silverlight客户端(我经常使用它)非常相似,并且大大减少了序列化对象的大小。仅仅因为这个原因,使用WCF是值得的。

(顺便说一句,WCF包含在框架中,所以你要添加的唯一东西就是你的代码有点复杂 - 但实际上并不是那么多 - )