Я пытаюсь передать строку из моей службы angular 7 в .net API... но она всегда дает плохой контент. Может ли кто-нибудь предложить мне какое-либо решение?
УГЛОВОЙ:
searchAgentCode(agent_code:string): Observable<prsProducer[]>{
debugger;
let url: string=this._global.serviceUrl+'Producers/checkAgentCode';
return this._httpClient.post<prsProducer[]>(url,agent_code);
}
API:
[HttpPost]
[Produces(typeof(List<ProducerDC>))]
[Route("checkAgentCode")]
public IActionResult checkAgentCode([FromBody]String obj_ProducerDC)
{
sys_ACTIVITY_LOG_Insert(Request);
try
{
ProducerBL obj_ProducerBL = new ProducerBL();
List<ProducerDC> producer = new List<ProducerDC>();
//List<sys_USERDC> list = new List<sys_USERDC>();
//list.Add(sys_USER);
int UpdatedCount = 0;
string agent_code = obj_ProducerDC.AGENT_CODE;
producer = obj_ProducerBL.checkAgentCode(agent_code);
return Ok(producer);
}
catch (Exception ex)
{
LogException(ex);
throw new Exception(ex.Message);
}
}





Мы можем использовать объект класса для хранения параметра. а затем отправить его в API.
searchAgentCode(agent_code:string): Observable<prsProducer[]>{
debugger;
Myclass myobj=new Myclass();
myobj.agent_code=agent_code;
let url: string=this._global.serviceUrl+'Producers/checkAgentCode';
return this._httpClient.post<prsProducer[]>(url,myobj);
}
\
для API создайте тот же класс с теми же свойствами и получите параметр в объекте класса как:
[HttpPost]
[Produces(typeof(List<ProducerDC>))]
[Route("checkAgentCode")]
public IActionResult checkAgentCode([FromBody]MyClassforAPI obj_ProducerDC)
{
sys_ACTIVITY_LOG_Insert(Request);
try
{
string agent_code= obj_ProducerDC.agent_code;
//YOUR CODE
}
catch (Exception ex)
{
LogException(ex);
throw new Exception(ex.Message);
}
}
На самом деле предпочтительнее создать модель представления, как показано, например, Хур Аббас.
Если передача одной строки является строгим требованием для вас, взгляните на ответ это.
В зависимости от подхода REST, используемого в проекте, также может быть решением передать его в качестве параметра маршрута.
[Route("checkAgentCode/{obj_ProducerDC}")]
public IActionResult checkAgentCode(string obj_ProducerDC)
{
// Logic here...