Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/.net/20.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
ASP.NET(网页)=>;ASP.NET核心3.1 WebAPI_Asp.net_.net_Asp.net Core_Asp.net Core 3.1_Legacy - Fatal编程技术网

ASP.NET(网页)=>;ASP.NET核心3.1 WebAPI

ASP.NET(网页)=>;ASP.NET核心3.1 WebAPI,asp.net,.net,asp.net-core,asp.net-core-3.1,legacy,Asp.net,.net,Asp.net Core,Asp.net Core 3.1,Legacy,我正试图用我的新Core 3.1 API连接我的旧系统,但旧web应用程序生成的有效负载在我的API中不起作用,因为所有值都为空,但如果我在postman中测试,一切正常,这就是postman的有效负载: {"{"UserId":0,"UserGroup":"something","AccessToken":"","CreatedBy":"something

我正试图用我的新Core 3.1 API连接我的旧系统,但旧web应用程序生成的有效负载在我的API中不起作用,因为所有值都为空,但如果我在postman中测试,一切正常,这就是postman的有效负载:

{"{"UserId":0,"UserGroup":"something","AccessToken":"","CreatedBy":"something","From":"2020/01/01","To":"2020/07/10","TokenName":"something"}
}
这是来自传统web应用程序:

{"payload":{"UserId":0,"UserGroup":"soemthing","AccessToken":"","CreatedBy":"something","From":"2020/01/01","To":"2020/07/10","TokenName":"something"}}
正如您所注意到的,邮递员有效负载不包括“有效负载”,而legacy则包括,但有趣的是,legacy应用程序支持这一点,这意味着我可以按原样发送有效负载,解析器将完成它的工作。
那么,这里可能发生的事情有什么线索吗?

从您提供的信息来看,遗留api似乎将生成一个json对象,其属性名为
payload

{
  "payload" : { /* the object contains UserId, UserGroup, etc */ }
}
但是,您的.NET Core API接受具有以下结构的json对象:

{
  userId: 0,
  UserGroup: "some group",
  /* other properties... */
}
因此,您可能需要在.NET Core API中定义一个名为
有效负载
的绑定模型:

公共类LegacyAppBindingModel
{
公共PayloadBindingModel有效负载{get;set;}
公共类PayloadBindingModel
{
public int UserId{get;set;}
/*其他属性,即用户组、AccessToken等*/
}
}
请提供一个