将 XML 从 C# 传递到 SQL Server
Posted
技术标签:
【中文标题】将 XML 从 C# 传递到 SQL Server【英文标题】:Pass XML from C# to SQL Server 【发布时间】:2011-11-16 06:36:53 【问题描述】:我正在尝试将以下格式的 XML 从 C#(DataType 字符串)发送到 SQL Server 存储过程:
<Content> </Content>
在 SQL Server 列中应该存储一个空格。但它会像<Content/>
一样存储。所以简而言之,从 c# 到 SQL Server 的空间丢失了。
有没有办法避免这种情况?
【问题讨论】:
我认为您的示例代码丢失了,请编辑问题以便我们为您提供帮助。 Mayur 放了一些代码。它帮助同行更好地理解问题 他在<content>
元素中丢失了一个空格 ' ' 字符
【参考方案1】:
这两个片段是等价的; SQL Server 只是在优化 XML。
您需要那里的空间有什么特别的原因吗?如果是这样,你可以试试xml:space="preserve"
,像这样:
<Content xml:space="preserve"> </Content>
【讨论】:
【参考方案2】:您可以添加属性xml:space="preserve"
。这有助于“正常”序列化上下文,我不知道它是否会对您的特殊上下文有所帮助。
【讨论】:
【参考方案3】:您尝试过使用 吗?
【讨论】:
以上是关于将 XML 从 C# 传递到 SQL Server的主要内容,如果未能解决你的问题,请参考以下文章
在 Sql Server 中将 xml 文档作为存储过程的参数传递是不是安全?
使用 c# asp.net 获取 XML 数据并插入到 sql server