【发布时间】:2009-07-09 13:03:53
【问题描述】:
我正在对 ASMX Web 服务(传统 .NET SOAP 服务)中的 XML 文档进行一些预处理,以便最终在 Silverlight 前端中使用。
为了便于使用,我正在将该 XML 文档处理为 POCO 对象。对象定义如下:
public class CACDocument : ITextDocument
{
#region Properties
public string Title { get; set; }
public string Text { get; set; }
public List<Code> CodeList { get; set; }
public XElement FormatedText { get; set; }
#endregion
#region Constructor
public CACDocument()
{
CodeList = new List<Code>();
}
#endregion
}
该对象中的 Text 属性包含基本格式化的文本(换行符、空格等...)。提供该属性的 XML 节点如下所示:
<text>
A TITLE FOLLOWED BY two line breaks
Some text followed by a line break
Some more text that might extend for a paragraph or two followed by more line breaks
Still more text
</text>
一切都很好,并且格式保持不变,正如我所期望的那样,Web 服务会序列化要发送到前端的数据。我猜想为了优化带宽,序列化对象会在发送之前从 Text 属性中去除额外的空格和换行符。在这个特定的例子中,这种格式很重要。有没有办法强制 web 服务保持这种空白/换行格式?
我想我用代码替换了一些有问题的项目,然后在前端转换回来,但这让我觉得有点笨拙。
【问题讨论】:
标签: c# .net web-services asmx