在没有中间SqlXml的情况下将XmlDocument加载到string(如果有)的更好方法是哪种?

我需要使用xmlxsd内部的数据库验证CLR UDF。我尝试优化我的代码。

我的代码是:

        schema1 = XmlSchema.Read(new StringReader(cXmlSchemaText), ValidateSchema);

        asset1.Schemas.Add(schema1);
        asset1.LoadXml(ValueString.ToString());
        asset1.Validate(ValidateXmlValue);


其中ValueString是我的SqlXml

最佳答案

首先,即使.ToString().Value返回相同的字符串值,为了访问ValueString.Value类型内的值的一致性,最好还是使用Sql*

您应该能够通过使用SqlXml.CreateReader方法跳过中间字符串,根据文档,该方法应返回SqlXml变量的内部XmlReader。您的代码将更改为:

asset1.Load(ValueString.CreateReader());

关于c# - 快速方法将SqlXml转换为C#中的XmlDocument以获得SQLCLR函数?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/34768690/

10-11 00:25