«ToastNotification» не содержит определения «данных» в Windows Server 2016 - PullRequest
0 голосов
/ 29 апреля 2019

Я не могу собрать свое решение Toast Progress Bar на сервере сборки после успешной сборки локально.

Ошибки на сервере сборки:

Ошибка CS0117: «ToastNotification» не содержит определения «Данные»

Ошибка CS0246: не удалось найти тип или имя пространства имен «NotificationData» (отсутствует директива using или ссылка на сборку?)

Ошибка CS1061: «ToastNotifier» не содержит определения «Update», и нет доступного метода расширения «Update», принимающего первый аргумент типа «ToastNotifier» (вы пропустили директиву using или ссылку на сборку? ) * +1010 *

Мой код:

public void ShowProgress()
{
    var definition = new XElement("toast");
    definition.Add(new XElement("visual", new XElement("binding", new XAttribute("template", "ToastGeneric"),
        new XElement("text", caption),
        new XElement("progress",
        new XAttribute("title", "{progressTitle}"),
        new XAttribute("value", "{progressValue}"),
        new XAttribute("status", "Downloading...")))));
    var data = new Dictionary<string, string>
        {
            { "progressTitle", string.Empty },
            { "progressValue", "0.00" }
        };

    var toast = new ToastNotification(ToXmlDocument(definition))
    {
        Tag = progressTag,
        Data = new NotificationData(data, sequenceNumber)
    };

    ToastDesktopNotificationManagerCompat.CreateToastNotifier().Show(toast);
}

public void UpdateProgress()
{
    ...
}

Наши серверы сборки - Windows Server 2016, а моя коробка разработчика - Windows 10 1803, на обоих установлен VS VS 2017. Сначала я подумал, что мне просто не хватает Windows 10 SDK (10.0.15063.0), поскольку это требуется для функциональности прогресса , но эта и более новая версия уже установлена.

NotificationData находится в Windows.UI.dll, который находится в каталоге c: \ Windows \ System32 \, а не в каталоге Windows SDK. Так что это объясняет, почему на моем сервере сборки более старые и отсутствующие типы.

Итак, вопрос в том, возможно ли построить мой код прогресса на Windows Server 2016 или я вынужден обновиться до 2019?

...