www urlencoded recibir por parametros form enviar datos application c# windows-phone-8.1

urlencoded - recibir parametros post c#



Cómo POSTAR utilizando el tipo de contenido HTTPclient=application/x-www-form-urlencoded (3)

Estaba usando una API .Net Core 2.1 con el atributo [FromBody] y tuve que usar la siguiente solución para [FromBody] con éxito:

_apiClient = new HttpClient(); _apiClient.BaseAddress = new Uri(<YOUR API>); var MyObject myObject = new MyObject(){ FirstName = "Me", LastName = "Myself" }; var stringified = JsonConvert.SerializeObject(myObject); var result = await _apiClient.PostAsync("api/appusers", new StringContent(stringified, Encoding.UTF8, "application/json"));

Actualmente estoy desarrollando una aplicación wp8.1 C #, he logrado realizar un método POST en json en mi api creando un objeto json (bm) desde textbox.texts. Aquí está mi código a continuación. ¿Cómo tomo el mismo textbox.text y lo PUBLICO como tipo de contenido = application / x-www-form-urlencoded? ¿Cuál es el código para eso?

Profile bm = new Profile(); bm.first_name = Names.Text; bm.surname = surname.Text; string json = JsonConvert.SerializeObject(bm); MessageDialog messageDialog = new MessageDialog(json);//Text should not be empty await messageDialog.ShowAsync(); HttpClient client = new HttpClient(); client.DefaultRequestHeaders.Clear(); client.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue("application/json")); client.DefaultRequestHeaders.TryAddWithoutValidation("Content-Type", "application/json"); byte[] messageBytes = Encoding.UTF8.GetBytes(json); var content = new ByteArrayContent(messageBytes); content.Headers.ContentType = new MediaTypeHeaderValue("application/json"); var response = client.PostAsync("myapiurl", content).Result;


var nvc = new List<KeyValuePair<string, string>>(); nvc.Add(new KeyValuePair<string, string>("Input1", "TEST2")); nvc.Add(new KeyValuePair<string, string>("Input2", "TEST2")); var client = new HttpClient(); var req = new HttpRequestMessage(HttpMethod.Post, url) { Content = new FormUrlEncodedContent(nvc) }; var res = await client.SendAsync(req);

O

var dict = new Dictionary<string, string>(); dict.Add("Input1", "TEST2"); dict.Add("Input2", "TEST2"); var client = new HttpClient(); var req = new HttpRequestMessage(HttpMethod.Post, url) { Content = new FormUrlEncodedContent(dict) }; var res = await client.SendAsync(req);


var params= new Dictionary<string, string>(); var url ="Please enter URLhere"; params.Add("key1", "value1"); params.Add("key2", "value2"); using (HttpClient client = new HttpClient()) { client.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue("application/json")); HttpResponseMessage response = client.PostAsync(url, new FormUrlEncodedContent(dict)).Result; var tokne= response.Content.ReadAsStringAsync().Result; } //Get response as expected