DTSXMLOperation Перечисление
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Указывает операции, используемые при работе с XML-документами.
public enum class DTSXMLOperation
public enum DTSXMLOperation
type DTSXMLOperation =
Public Enum DTSXMLOperation
- Наследование
-
DTSXMLOperation
Поля
Diff | 4 | Сравнивает два XML-документа. При использовании в качестве основного документа исходного XML-документа операция Diff сравнивает их с другим XML-документом, находит различия между ними и записывает их в XML-документ Diffgram. Эта операция содержит свойства для настройки сравнения. |
Merge | 3 | Выполняет слияние двух XML-документов. При использовании исходного XML-документа в качестве основного выполняется слияние второго и базового документов. Можно задать местоположение в документе, куда будут вставлены данные. |
Patch | 5 | Добавляет в указанный XML-документ выходной документ операции инструмента сравнения (документ Diffgram), чтобы получился новый документ, который может включать в себя содержимое документа Diffgram. |
Validate | 0 | Проверяет соответствие XML-документа определению типа документа (DTD) или схеме XML (XSD). |
XPATH | 2 | Выполняет запросы и вычисления XPath. |
XSLT | 1 | Выполняет преобразование XSL в XML-документах. |
Примеры
В следующем примере кода показано, что это перечисление используется для задания OperationType сразу после создания задачи.
using System;
using System.Collections.Generic;
using System.Text;
using Microsoft.SqlServer.Dts.Runtime;
using Microsoft.SqlServer.Dts.Tasks.XMLTask;
namespace XMLTask_API
{
class Program
{
static void Main(string[] args)
{
// Set up the objects and tasks.
Package pkg = new Package();
Executable exec1 = pkg.Executables.Add("STOCK:XMLTask");
TaskHost th = exec1 as TaskHost;
// You can cast the InnerObject to the XmlTask, but it is advised
// that you work with tasks through the TaskHost and its Properties.
// XMLTask myTask = th.InnerObject as XMLTask;
// Create a variable and a FILE connection manager to books.xml.
Variable resultVar = pkg.Variables.Add("resultVariable", false, "", "Variable for the result");
ConnectionManager connMgr = pkg.Connections.Add("FILE");
connMgr.Name = "XMLConnectionManager";
// The file, Books.xml, is stored on the C:\ drive.
connMgr.ConnectionString = @"c:\books.xml";
// Set the XMLTask properties.
// The first property to set is the OperationType. Depending on the
// OperationType, different properties are valid.
// The operation type in this example is VALIDATE.
th.Properties["OperationType"].SetValue(th, DTSXMLOperation.Validate);
th.Properties["SourceType"].SetValue(th, DTSXMLSourceType.FileConnection);
th.Properties["Source"].SetValue(th, connMgr.Name);
th.Properties["OverwriteDestination"].SetValue(th, true);
th.Properties["SaveOperationResult"].SetValue(th, true);
th.Properties["DestinationType"].SetValue(th, DTSXMLSaveResultTo.Variable);
th.Properties["Destination"].SetValue(th, resultVar.Name);
th.Properties["SecondOperandType"].SetValue(th, DTSXMLSourceType.DirectInput);
th.Properties["SecondOperand"].SetValue(th, "<x></x>");
th.Properties["ValidationType"].SetValue(th, DTSXMLValidationType.DTD);
th.Properties["FailOnValidationFaile"].SetValue(th, true);
DTSExecResult valResults = pkg.Validate(pkg.Connections, pkg.Variables, null, null);
Console.WriteLine("RESULTS: {0}", valResults);
}
}
}
Образец вывода:
РЕЗУЛЬТАТЫ: успех
Комментарии
Эта операция определяет, какие другие свойства в XMLTask классе являются допустимыми. Например, если выбрана XPATHоперация, то свойства PutResultInOneNode и XPathOperation используются. Когда операция находится Validate, FailOnValidationFail флаг доступен. Обычно это первый набор свойств в коде, поэтому вы можете сразу же увидеть, какая задача XMLTask выполняется.