只是构建一个示例应用程序来尝试解决问题。
我有一个名为 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"}
那么路径和名称的字段都为空。这是函数中调试器中显示的字符串消息: "{\"path\": \"path here\",\"name\": \"name here\"}"
我也尝试将消息设置为 messageClass 或 Object 的类型,而不是字符串。
使用 Newtonsoft.Json;
相关分类