.net core 通过Web API传递动态where子句
我目前正在创建一个.NET核心Web API,该API将与角度前端交互。web API需要能够基于动态构建的where语句返回数据。例如,我有一个具有以下模型的对象.net core 通过Web API传递动态where子句,.net-core,asp.net-core-webapi,.net Core,Asp.net Core Webapi,我目前正在创建一个.NET核心Web API,该API将与角度前端交互。web API需要能够基于动态构建的where语句返回数据。例如,我有一个具有以下模型的对象 { "accountCode": "ABC123", "addressLine1": "AddressLine1", "addressLine2": "AddressLine2", "addressLine3": "AddressLine3", "addressLine4": null,
{
"accountCode": "ABC123",
"addressLine1": "AddressLine1",
"addressLine2": "AddressLine2",
"addressLine3": "AddressLine3",
"addressLine4": null,
"addressLine5": null,
"businessUnitName": "",
"companyRegistrationNumber": null,
"name": "My supplier",
"postcode": "BA112RP",
"supplierId": 3,
"vatRegistrationNumber": null
}
现在,我不需要使用12个不同的参数设置控制器方法,也不需要在每次添加新属性时添加额外的参数,有没有一种方法可以使用动态参数(KeyValuePair类型排列) 您的asp.net核心web api能够隐式地将输入转换为任何给定对象,例如:
[Route("api/[controller]")]
[ApiController]
public class HomeController : ControllerBase
{
public IActionResult PostObject([FromBody] MyObject obj)
{
// Your Code goes here
}
}
默认情况下,这需要JSON格式,但您也可以使用其他格式,如FormData
此外,它不能是具有已定义属性的对象。您也可以使用简单的KeyValuePair。看看在哪里可以找到关于如何最好地解决问题的其他建议。在重新阅读您的问题时,我意识到我误读了您的问题。你能澄清一下你的要求吗?您正在尝试将一个KeyValuePair从您的WebAPI控制器发送到您的角度前端?在那件事上我看不出有什么妨碍你的。字典或JObject(Newtonsoft.JSON)应该完成我希望将KeyValuePair从前端传递到WebApi的任务。你对原始问题的回答解决了它,只是还没有机会将其标记为正确。非常感谢。我很高兴能帮上忙:)干杯