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

Silverlight与数据集Web服务的交互

  •  1
  • icelava  · 技术社区  · 16 年前

    我的同事发现自己处于一个“有趣”的境地。他正在开发一个Silverlight(2.0)原型,该原型需要调用企业中的现有Web服务,并将返回的数据绑定到数据显示控件。问题是,Web服务返回.NET数据集(它们不会更改现有的实现),而Silverlight本身不支持数据集。

    一个好的解决方法是什么?我在想一个适配器模式,但不知道中间人Web服务执行转换是否是一个很好的主意。如果存在许多现有的Web服务,可能会很乏味。

    4 回复  |  直到 16 年前
        1
  •  1
  •   Santiago Palladino    16 年前

    Afaik,当.NET Web服务返回数据集时,它返回其XML表示形式(这非常友好)。.NET客户端只能直接使用数据集这一事实抽象出一个事实,即XML序列化正在进行反序列化。

    因此,我将手动查询您需要的Web服务,观察生成的XML,然后在客户端解析它。

    另一种可能性是利用Web服务使用标准XML序列化程序这一事实,这样您就可以从返回的架构创建C类,然后让XML序列化程序自动处理它。我不确定xsd.exe工具生成的代码是否支持Silverlight,但值得一试。

        2
  •  1
  •   Tim Cooper    13 年前
        3
  •  0
  •   redsquare    16 年前

    数据集的危险性和普遍性。我将使用一个负责使用webmethod并将数据集转换为xml/json的通用代理。

        4
  •  0
  •   user185177    15 年前

    是的, silverlight ds 是一个很好的解决方案,他们甚至有内在的关系