передать строку из углового в .NET Core - PullRequest
0 голосов
/ 17 апреля 2019

Мне нужно отправить переменную из angular в ядро ​​.net без необходимости регистрировать ее в базе данных, потому что она нужна только один раз.

это мой пример с угловой стороны (тестовый пример)

value:string = "test";
self.http.get("http://localhost:5000/api/UserCode?code="+this.value)
          .subscribe(data=>{
            console.log(data);
            // console.log(this.value)
          })
      });

Backend (что-то вроде этого)

 // GET: api/UserCode
        [HttpGet]
        public async Task<IActionResult> GetUserCode()
        {
            return Ok(UserCodes);
        }

Я думаю, что это правильно, но бэкэнд я пробовал так много решений, но безрезультатно Итак, как получить или прочитать значение в бэкэнде (.Net Core), не сохраняя его, и мне нужна модель или параметры запроса или что !!! Спасибо

Ответы [ 5 ]

1 голос
/ 17 апреля 2019

Причина, по которой вы не можете сделать эту работу, заключается в том, что вы указываете параметр в URL, а не в теле.Также рекомендуется всегда использовать аннотацию [FromBody] и, как правило, таким образом передавать данные.

При этом, поскольку вы передаете переменную из URL-адреса, все, что вам нужно, это указать параметр в параметрах функции.

[HttpGet]
public async Task<IActionResult> GetUserCode(string code)

И изменить URL-адрес на:

value:string = "test";
self.http.get("http://localhost:5000/api/UserCode/"+this.value)
      .subscribe(data=>{
        console.log(data);
        // console.log(this.value)
      })
  });
1 голос
/ 17 апреля 2019

Вы должны добавить параметр в метод вашего обработчика:

[HttpGet]
public async Task<IActionResult> GetUserCode(string code)
{
    // ...do whatever you want with code parameter here...
    return Ok(UserCodes);
}
0 голосов
/ 18 апреля 2019

Попробуйте использовать [FromQuery] для привязки модели

[HttpGet]
public async Task<IActionResult> GetUserCode([FromQuery]string code)
0 голосов
/ 17 апреля 2019

вы можете использовать параметры URL.

value:string = "test";
const optionsParams = {
          params: new HttpParams()
            .set('code', this.value)
        };
self.http.get("http://localhost:5000/api/UserCode", optionsParams )
          .subscribe(data=>{
            console.log(data);
          })
      });

вам также нужно настроить сервис на сервере

0 голосов
/ 17 апреля 2019

вы пропустите = оператпр

UserCode?code="+this.value
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...