Поделиться через


Использование API-функции загрузчика XML-событий

При необходимости пересылки XML-данных приложению служб Notification Services используйте API-функцию загрузчика XML-событий. При помощи API-функции из одиночного XML-документа создается пакет уведомлений.

API-функция загрузчика XML-событий имеет один класс: EventLoader.

Создание и инициализация класса EventLoader

Можно создать и инициализировать объект EventLoader, используя параметризованный конструктор для передачи объекта NSApplication, представляющего желаемое приложение служб Notification Services, имени поставщика событий, имени класса событий и имени файла схемы XML с аннотациями SQL, обеспечивающего соответствие данных из структуры XML-документа структуре класса событий.

Дополнительные сведения о создании файла XML-схем с аннотациями SQL см. в разделе «Authoring and Using Custom Schemas Backgrounder в библиотеке Microsoft MSDN».

Отправка данных событий

После создания и инициализации объекта EventLoader используйте метод LoadXml для создания пакета событий, содержащего одно или несколько событий из источника XML-данных в базе данных приложения служб Notification Services.

Пример

В этом примере используются следующие пространства имен:

public bool Run()
{
    // These variables would normally be defined for
    // the class. They would be set based on the values
    // provided by the args argument of the Initialize method.
    string instanceName = "MyInstanceName";
    string applicationName = "MyApplicationName";
    string eventClassName = "MyEventClassName";
    string eventProviderName = "MyEventProviderName";
    string eventSchema = "MyEventSchemaPathAndName";
    string xmlDoc = "MyXMLDocPathAndName";

    bool returnValue = true;
    DateTime currentTime = DateTime.Now;

    try
    {
        // Get the Notification Services instance.
        NSInstance testInstance = new NSInstance(instanceName);

        // Get the Notification Services application.
        NSApplication testApplication =
            new NSApplication(testInstance, applicationName);

        // Create the EventLoader object.
        EventLoader testEventLoader =
            new EventLoader(testApplication, eventProviderName,
            eventClassName, eventSchema);

        // Write the event records from the XML data 
        // source to the application database.
        int eventsSubmitted = testEventLoader.LoadXml(xmlDoc);
    }
    catch(Exception e)
    {
        //Add code to handle errors here.
    }

    return returnValue;
}

См. также

Другие ресурсы

Разработка пользовательского поставщика событий
Определение поставщиков событий

Справка и поддержка

Получение помощи по SQL Server 2005