我是新来的API设计与VS2017,我试图使我的简单的API工作与数据库中的几个SQL对象。Noob in ASP MVC Routing - 404错误
我有一个非常简单的项目,它看起来像这样:
WebApiConfig.cs:
public static void Register(HttpConfiguration config)
{
// Web API configuration and services
// Web API routes
//config.MapHttpAttributeRoutes();
config.Routes.MapHttpRoute(
name: "DefaultApi",
routeTemplate: "api/{controller}/{id}",
defaults: new { id = RouteParameter.Optional }
);
}
我相信这是股票那么应该让我在哪里,我想。 我基于相同的原理有些控制器上,这里有一个例子:
public class UsersController : Controller
{
private APIContext db = new APIContext();
// GET: Users
public ActionResult Index()
{
return View(db.Users.ToList());
}
// GET: Users/Details/5
public ActionResult Details(int? id)
{
if (id == null)
{
return new HttpStatusCodeResult(HttpStatusCode.BadRequest);
}
Users users = db.Users.Find(id);
if (users == null)
{
return HttpNotFound();
}
return View(users);
}
}
有更多的人,但一切都已经自动生成的,所以我不认为我有必要告诉他们。
问题是,当我到达localhost/api/users时,出现404错误页面: 未找到与请求URI'http://localhost:myport/api/users'匹配的HTTP资源。
同样的事情,当我试图访问一个特定的ID与/ api/users/1 任何人都可以指出我应该尝试和改变的地方? 我迷失在配置文件和路线的丛林中!
谢谢!
编辑: 经过一些很好的答案,这里有一些更多的信息: 我想知道如果问题不在别的地方。当我在localhost/api上时,我得到一个“漂亮”的错误页面,但是当我尝试访问/ api/users/index时,我得到一个带有404消息的XML响应。这是另一个问题的标志吗? 需要注意的是,Swagger UI完全没有任何显示。 。
谢谢,当我更新时,当我尝试访问“良好”路线时,错误页面不一样。但我的问题尚未解决。 –