Я попытался следующие:Как включить ссылки на внешние сборки в Azure функций
using System;
using Newtonsoft.Json
using Newtonsoft.Linq
public static void Run(string myEventHubMessage, out string document, TraceWriter log)
{
log.Verbose($"C# Event Hub trigger function processed a message: {myEventHubMessage}");
dynamic jsonData = JObject.Parse(myEventHubMessage);
document = jsonData;
}
я получаю следующее, когда я нажал на кнопку «Сохранить» в Azure портале:
2016- 04-05T21: 28: 31 Приветствуем вас, теперь вы подключены к услуге регистрации журналов . 2016-04-05T21: 28: 33.443 Сценарий для функции «ProbeEventHubTrigger» изменен. Перегрузочный. 2016-04-05T21: 28: 33.443 Скомпилировать скрипт функции. 2016-04-05T21: 28: 33,568 (2,22): ошибка CS1002:; ожидаемый 2016-04-05T21: 28: 33,568 (3,22): ошибка CS1002:; Ожидаемый 2016-04-05T21: 28: 33.568 (2,7): ошибка CS0246: Тип или имя пространства имен 'Newtonsoft' не удалось найти (вам не хватает с использованием директивы или ссылки на сборку?) 2016-04 -05T21: 28: 33.568 (3,7): ошибка CS0246: имя типа или пространства имен «Newtonsoft» не может быть найдено (вам не хватает директивы использования или ссылки на сборку?) 2016-04-05T21: 28 : 33.568 (8,24): ошибка CS0103: имя «JObject» делает не существует в текущем контексте 2016-04-05T21: 28: 33.568 Компиляция не удалась.
Я также попытался следующие:
#r "Newtonsoft.Json"
#r "Newtonsoft.Linq"
using System;
public static void Run(string myEventHubMessage, out string document, TraceWriter log)
{
log.Verbose($"C# Event Hub trigger function processed a message: {myEventHubMessage}");
dynamic jsonData = JObject.Parse(myEventHubMessage);
document = jsonData;
}
В этом случае я получаю следующее, когда я нажал на кнопку «Сохранить» в Лазурном портале:
2016-04-05T21 : 35: 36 Добро пожаловать, теперь вы подключены к сервису логарифмической службы . 2016-04-05T21: 35: 38.428 Сценарий для функции «ProbeEventHubTrigger» изменен. Перегрузочный. 2016-04-05T21: 35: 38.428 Скомпилирование скрипта функции. 2016-04-05T21: 35: 38.571 (2,1): ошибка CS0006: Файл метаданных 'Newtonsoft.Linq' не найдено 2016-04-05T21: 35: 38.571 (8,24): ошибка CS0103: название «JObject» делает не существует в текущем контексте
Это не очевидно из документации, как ссылаться на эти сборки. Я вижу в одном примере синтаксис «использование Newtonsoft.Json», но это, похоже, не работает на портале. Какие-либо предложения?
Спасибо. Вы можете рассмотреть возможность обновления примеров в своей документации, чтобы показать это. –
Спасибо, Стив. Мы активно работаем над образцами и документацией, чтобы покрыть недостающие вещи и сделать их более открытыми. Часть информации, которую я разделяю, рассматривается здесь: https://azure.microsoft.com/en-us/documentation/articles/functions-reference/#referencing-external-assemblies, но не стесняйтесь задавать вопросы о SO и MSDN, если вы не можете найти информацию, которую ищете в документах. Мы доберемся туда :) –
Спасибо Фабио. До сих пор я впечатлен простотой, с которой вы можете удалить сообщения из центра событий и выгрузить их в DocumentDB. Хорошая работа! –