Asp.net web api 如何使用字符串参数?
我目前有一个使用EF6的web api Get方法,它接受一个名为serial的int参数。我想从URI中查找extserial,而不是主键序列 这是我的Get,我有localhost/api/AH?serial=1Asp.net web api 如何使用字符串参数?,asp.net-web-api,entity-framework-6,Asp.net Web Api,Entity Framework 6,我目前有一个使用EF6的web api Get方法,它接受一个名为serial的int参数。我想从URI中查找extserial,而不是主键序列 这是我的Get,我有localhost/api/AH?serial=1 // GET api/AH/5 [ResponseType(typeof(Transmital))] public IHttpActionResult GetTransmital(int Serial) { T
// GET api/AH/5
[ResponseType(typeof(Transmital))]
public IHttpActionResult GetTransmital(int Serial)
{
Transmital transmital = db.Transmitals.Find(Serial);
if (transmital == null)
{
return NotFound();
}
return Ok(transmital);
}
我需要通过localhost/api/AH?ExtSerial=ABC123获取它
出于某种原因,它不会采取以下措施
// GET api/AH/5
[ResponseType(typeof(Transmital))]
public IHttpActionResult GetTransmital(string ExtSerial) //or [FromUri]string ExtSerial
{
Transmital transmital = db.Transmitals.Find(ExtSerial);
if (transmital == null)
{
return NotFound();
}
return Ok(transmital);
}
您应该使用IHttpActionResult接口 试试这个:
public IHttpActionResult GetTransmitalsExtSerial([FromUri] string ExtSerial)
{
//return Ok(ExtSerial.ToString());
return Ok(db.Transmitals.Where(exs => exs.ExtSerial == ExtSerial));
}