Просто создаю пример приложения, чтобы попытаться что-то выяснить.
У меня есть класс с именем messageClass:
namespace WebJobsSDKSample
{
public class messageClass
{
string name { get; set; }
string path { get; set; }
}
}
и функция:
namespace WebJobsSDKSample
{
public class Functions
{
public static void ProcessQueueMessage([QueueTrigger("queue")] string message)
{
messageClass mess = JsonConvert.DeserializeObject<messageClass>(message);
}
}
}
Программа настраивает вещи так:
namespace WebJobSDK
{
class Program
{
static void Main(string[] args)
{
var config = new JobHostConfiguration();
config.UseDevelopmentSettings();
if (config.IsDevelopment)
{
}
config.DashboardConnectionString = "";
var loggerFactory = new LoggerFactory();
config.LoggerFactory = loggerFactory
.AddConsole();
var host = new JobHost(config);
host.RunAndBlock();
}
}
}
Теперь, когда я запускаю это, оно работает, и если я помещаю сообщение в очередь, оно поднимается.Но это не рассматривается как объект JSON.Если я добавлю это как сообщение:
{"путь": "путь сюда", "имя": "имя здесь"}
, тогда оба поля для пути и имени будутноль.Вот что показывает строковое сообщение в отладчике в функции: "{\" path \ ": \" path here \ ", \" name \ ": \" name here \ "}"
Iпопытался установить сообщение как тип messageClass или Object вместо строки.
Использование Newtonsoft.Json;
Спасибо,
Джо