JSON 没有反序列化

JSON is not deserializing

这里出了点问题,我想不通。 我正在 POST 调试 Visual Studio 2019/c# 中的 Azure 函数。 POST 看起来像这样:

在调试中,requestBody 从流中获取并放入字符串中。我正在将 JSON 反序列化为一个对象(我也尝试过动态),但未填充该对象。事实上,对象“数据”甚至似乎并不存在。查看我在断点处的图像,值“数据”甚至不存在:

public static async Task<IActionResult> Run(
        [HttpTrigger(AuthorizationLevel.Function, "post", Route = null)] HttpRequest req, ILogger log)
    {
        log.LogInformation("C# HTTP trigger function processed a request.");

        string requestBody = String.Empty;
        using (StreamReader streamReader = new StreamReader(req.Body))
        {
            requestBody = await streamReader.ReadToEndAsync();
        }

        var data = JsonConvert.DeserializeObject<AppInfo>(requestBody);
        string responseMessage = string.IsNullOrEmpty(data.UserGuid) ? "User not logged" : "User logged";

        return new OkObjectResult(responseMessage);
    }

    public class AppInfo
    {
        public string AppName = "";
        public string UserGuid = "";
    }

我使用下面的代码可以获得 Json 反序列化对象。请查看下方

我尝试使用 dynamicVar 数据类型来存储 json 反序列化对象

public  static  async Task<IActionResult> Run(
[HttpTrigger(AuthorizationLevel.Function, "get", "post", Route = null)] HttpRequest req,
ILogger log)
{
    log.LogInformation("C# HTTP trigger function processed a request.");
    string requestBody = await  new StreamReader(req.Body).ReadToEndAsync();
    var data = JsonConvert.DeserializeObject<AppInfo>(requestBody as  string);
    var val = JsonConvert.SerializeObject(data);
    string responseMessage = string.IsNullOrEmpty(data.UserGuid) ? "User not logged" : "User logged";
    return  new OkObjectResult(responseMessage);
}

public  class  AppInfo
{
    public  string AppName = "";
    public  string UserGuid = "";
}

这不是代码问题,而是 Visual Studio 的问题。 这是一个更大项目的一部分。另一个我打算发布的项目,但决定添加一些额外的功能。我已将构建更改为“发布”,然后添加了此代码。在我将构建类型设置为“调试”之前,它无法 运行 正确地执行此代码 - 然后代码开始正常工作。