在 Codefluent 中使用 XML 作为方法参数

Using XML as a method parameter in Codefluent

在 SQL 2014 数据库中,我有一个使用 XML 作为参数的存储过程。

我正在尝试创建一个使用 XML 作为参数类型的 Codefluent 方法。参数定义:

<cf:parameter typeName="xml" name="XMLcriteria " />

这导致 DB 过程的参数定义为:

 @XMLcriteria [nvarchar] (256)

而不是预期的:

 @XMLcriteria as XML

如果我尝试增加参数的最大大小,我会得到一个更奇怪的结果:

@XMLcriteria [nvarchar] (max) = ''

如何将 XML 作为方法参数传递,以便在 SQL 生产者创建的存储过程中将参数定义为 XML?

我也无法理解 XML CF 类型的作用。如果我创建类型为 XML 的 CF 实体 属性,BOM 会生成类型为 String 的 class 属性。如果我将 xElementxDocument 分配给此 属性,所有 XML 标记都将被剥离,我结束只有一长串值。在这种情况下,当我使用此实体(应包含 XML 属性)作为 SQL 过程中的参数时,我得到一个长字符串,无法访问 select 元素。

要定义 XML 参数,您可以使用属性 cfps:dataType="xml":

<cf:parameter typeName="xml" cfps:dataType="xml" name="arg" />

如果需要 XmlElementXmlDocument 类型的 属性,可以添加部分 class 并添加解析值的 属性字符串 属性.