【问题标题】:How to remove "diffgr:before" content from returned dataset via webservice如何通过 web 服务从返回的数据集中删除“diffgr:before”内容
【发布时间】:2011-08-29 17:02:46
【问题描述】:

我有一个网络方法:

public DataSet SyncedWall()
    {
            DataSet dst = dscomment;
            dst.Tables[0].Rows[i]["WallInfo"] = "my own modified value";
            return dst;
    }

虽然真正的方法很大,但这是一个缩小版。

以下是从web方法接收到的xml输出:

<DataSet>
<xs:schema id="NewDataSet">
<!-- Schema goes here.. -->
</xs:schema>

<diffgr:diffgram>

<NewDataSet>
<!-- Dataset values goes here... -->
</NewDataSet>

<diffgr:before>
<!-- Here are the original modified (unwanted) values -->
</diffgr:before>
</diffgr:diffgram>
</DataSet>

我想要的是删除&lt;diffgr:before&gt; 标签及其内部内容。 该怎么做?

【问题讨论】:

  • 最佳实践是根本不返回 .NET 特定类型,例如 DataSet
  • 感谢您的评论,但这并不能解决问题。 :)

标签: asp.net web-services dataset


【解决方案1】:

哈哈哈哈哈哈!!!

在摸索了几个小时之后,我找到了答案。 :P 在返回数据集之前,只需调用 datasetObject.AcceptChanges(); 即可。

代码如下:

public DataSet SyncedWall()
    {
            DataSet dst = dscomment;
            dst.Tables[0].Rows[i]["WallInfo"] = "my own modified value";
            dst.AcceptChanges();
            return dst;
    }

【讨论】:

  • 仍然包含一个模式,对吧?此外,如果这解决了您的问题,那么您应该接受自己的答案。
  • 有没有办法在 JAX-WS 中实现这种 Web 方法?非常感谢任何帮助
猜你喜欢
  • 2011-02-11
  • 1970-01-01
  • 1970-01-01
  • 2010-11-26
  • 2017-11-17
  • 1970-01-01
  • 2011-03-01
  • 1970-01-01
  • 2011-10-17
相关资源
最近更新 更多