找不到与所有表的请求 URI (...) 匹配的 HTTP 资源
No HTTP resource was found that matches the request URI (...) for all tables
遵循 this tutorial 作为指南 (OData/EntityFramework/Asp.Net)。
我能够在根目录上执行简单的 GET 命令。
{
"@odata.context": "http://localhost:49624/$metadata",
"value": [
{
"name": "Appointments",
"kind": "EntitySet",
"url": "Appointments"
},
......
{
"name": "Clients",
"kind": "EntitySet",
"url": "Clients"
}
]
}
但任何比这更复杂的问题都会给我一条错误消息。 (我使用的是空 routePrefix。)
http://localhost:49624/Services
给我:
{
"Message": "No HTTP resource was found that matches the request URI 'http://localhost:49624/Services'.",
"MessageDetail": "No type was found that matches the controller named 'Services'."
}
这是我超级简单的 GET
[EnableQuery]
public IQueryable<Service> Get()
{
return db.Services;
}
如果重要的话,我正在使用 Postman 来测试这些命令。虽然我认为这不是一个因素。
每个 table 我都有一个数据库和一个 DbSet。我不知道为什么我无法访问这些。
WebApiConfig:
config.MapHttpAttributeRoutes();
ODataModelBuilder builder = new ODataConventionModelBuilder();
builder.EntitySet<Appointment>("Appointments");
builder.EntitySet<Service>("Services");
builder.EntitySet<Employee>("Employees");
builder.EntitySet<Client>("Clients");
config.MapODataServiceRoute(
routeName: "ODataRoute",
routePrefix: null,
model: builder.GetEdmModel());
如果这是一个基本问题,我很抱歉,但我对这一切真的很陌生,已经在这堵墙上待得太久了哈哈。
上面的 Jan Hommes 指出控制器 class 需要复数(在我的例子中是 ServiceController -> ServicesController)
遵循 this tutorial 作为指南 (OData/EntityFramework/Asp.Net)。
我能够在根目录上执行简单的 GET 命令。
{
"@odata.context": "http://localhost:49624/$metadata",
"value": [
{
"name": "Appointments",
"kind": "EntitySet",
"url": "Appointments"
},
......
{
"name": "Clients",
"kind": "EntitySet",
"url": "Clients"
}
]
}
但任何比这更复杂的问题都会给我一条错误消息。 (我使用的是空 routePrefix。)
http://localhost:49624/Services
给我:
{
"Message": "No HTTP resource was found that matches the request URI 'http://localhost:49624/Services'.",
"MessageDetail": "No type was found that matches the controller named 'Services'."
}
这是我超级简单的 GET
[EnableQuery]
public IQueryable<Service> Get()
{
return db.Services;
}
如果重要的话,我正在使用 Postman 来测试这些命令。虽然我认为这不是一个因素。
每个 table 我都有一个数据库和一个 DbSet。我不知道为什么我无法访问这些。
WebApiConfig:
config.MapHttpAttributeRoutes();
ODataModelBuilder builder = new ODataConventionModelBuilder();
builder.EntitySet<Appointment>("Appointments");
builder.EntitySet<Service>("Services");
builder.EntitySet<Employee>("Employees");
builder.EntitySet<Client>("Clients");
config.MapODataServiceRoute(
routeName: "ODataRoute",
routePrefix: null,
model: builder.GetEdmModel());
如果这是一个基本问题,我很抱歉,但我对这一切真的很陌生,已经在这堵墙上待得太久了哈哈。
上面的 Jan Hommes 指出控制器 class 需要复数(在我的例子中是 ServiceController -> ServicesController)