我正在開發ASP.NET Core web API。在這裏我有一種情況,就像我必須使用從SQL服務器數據庫獲取數據的多個get
函數。爲此,我正在做自定義屬性路線。下面是我的代碼ASP.NET核心路由工作在VS IIS Express中,但不在IIS 10中
[Route("api/[controller]")]
public class MeController : Controller
{
private readonly ITechRepository _tech;
private readonly IPageOptions _page;
public MeController(ITechRepository tech,IPageOptions page)
{
_tech = tech;
_page = page;
}
[Route("getTech")]
public IEnumerable<TechStack> Get()
{
return _tech.getAll();
}
[Route("getOptions")]
public IEnumerable<PageControl> getOptions()
{
return _page.getOptions();
}
//GET api/values/5
[HttpGet("{id}")]
public int Get(int id)
{
return id;
}
}
上述路線以及在VS IIS表達的作品,這是URL
http://localhost:51889/api/me/gettech
但是當我發佈在IIS 10. getTech
和getOptions
這個API不工作它產生了404
錯誤,並且[HttpGet("{id}")]
正在同時工作。
任何人可以幫助這個...
plz提供更多信息,你會得到什麼樣的錯誤?哪個http響應代碼?順便說一句。我想定義的HttpMethod,而不是使用慣例的配置方法... 進一步我不熟悉.NET的核心Web API,但我想知道你爲什麼從COntroller而不是從ApiController繼承。 事實上,我猜想這不是worling,只是因爲你使用小寫方法名稱 – DotNetDev
@DotNetDev謝謝你的評論。在asp.net核心中沒有apiController類。 – Sankar
任何人都可以在此幫忙 – Sankar