我试图在我的ASP.NET Web API 5.27中调用属性路由,但是我收到404 Not Found错误。我已经对此进行了广泛的搜索。 我的应用程序是使用VS2019开发的Xamarin.Forms。 该调用可在实际测试设备的浏览器中运行,但不能在应用程序中运行。
这是我的设置:
public class OrdersController : ApiController
{
private readonly OrdersDbContext db = new OrdersDbContext();
// GET: api/Orders/5
[ResponseType(typeof(Order))]
[Route("Order/{Id}")]
[HttpGet]
public async Task<IHttpActionResult> GetOrder(int Id)
{
var order = await db.Orders.Where(w => w.OrderId == Id).Select(s => s)
.FirstAsync();
if (order == null)
{
return NotFound();
}
return Ok(order);
}
}
public class DataService : IDataService
{
readonly HttpClient _client;
public DataService()
{
_client = new HttpClient()
{
BaseAddress = new Uri(Constants.BaseUrl)
};
}
public async Task<Order> GetNewOrder(NewOrderDetails details)
{
var uri = $"Order/1";
var response = await _client.GetStringAsync(uri);
var order = JsonConvert.DeserializeObject<Order>(response);
return order;
}
}