代码之家  ›  专栏  ›  技术社区  ›  synergetic

带二进制XML的Silverlight应用程序

  •  0
  • synergetic  · 技术社区  · 15 年前

    我的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并将其直接发送到数据库(存储过程) 将其切碎并保存到适当的表中。

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

    1 回复  |  直到 15 年前
        1
  •  0
  •   Francesco De Vittori    15 年前

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

    “binary-xml”绑定在Silverlight客户机上工作得很好(我经常使用它),并且大大减小了序列化对象的大小。仅出于这个原因,使用WCF可能是值得的。

    (顺便说一下,WCF包含在框架中,所以您要添加的唯一一件事就是代码中有点复杂——但实际上并不是那么复杂)