Две вещи,
На стороне Android отправьте фактическую строку JSON
//...
//construct JSON
String json = "{\"type\":\"" + type + "\"}";
connection.setRequestProperty("Content-Length","" + Integer.toString(json.getBytes().length));
//send
writer.write(json);
//...
На стороне веб-API ASP.net
создайте модель для представленияданные, которые будут получены
public class TypeModel {
public string type { get; set; }
}
И обновите действие ApiController
, чтобы ожидать модель
[HttpPost]
public IHttpActionResult SetType([FromBody]TypeModel model) {
if (!ModelState.IsValid) return BadRequest(ModelState);
var connectionString = ConfigurationManager.ConnectionStrings["MConnectionString"].ConnectionString;
using (var connection = new SqlConnection(connectionString)) {
try {
var type = model.type;
connection.Open();
var cmd = new SqlCommand("insert into [MeasureType] (type_name) values (@type)", connection);
var parameter = cmd.CreateParameter();
parameter.ParameterName = "@type";
parameter.Value = type;
cmd.Parameters.Add(parameter);
return Ok("type has been uploaded successfully : " + type + " !");
} catch (Exception exception) {
return InternalServerError(exception);
}
}
}
Также обратите внимание на использование параметров, чтобы избежать внедрения SQL.