OData 路径模板不是有效的 OData 路径模板
OData path template is not a valid OData path template
我有一个具有 ODataRoute 的 HttpGet 方法
["Users({userId}/Tags)"]
userId
是一个字符串,方法名是UserTags
。控制器是 UsersController
。
当我 运行 应用程序时,出现以下错误:
The path template Users({userId})/Tags
on the action 'UserTags' in
controller Users
is not a valid OData path template. Found an
unresolved path segment Tags
in the OData path template
Users({userId})/Tags
.
ODataRoute
的限制非常严格,您的用户实体必须有一个名为 'Tags' 的集合 属性 才能工作。
使用以下代码,我可以正常工作:
public class UserController : ODataController
{
[HttpGet]
[System.Web.OData.Routing.ODataRoute("User({userId})/Tags")]
public IHttpActionResult GetTags([FromODataUri]int userId)
{
//...
}
}
public class User
{
[Key]
public int Id { get; set; }
public List<Tag> Tags { get; set; }
}
我有一个具有 ODataRoute 的 HttpGet 方法
["Users({userId}/Tags)"]
userId
是一个字符串,方法名是UserTags
。控制器是 UsersController
。
当我 运行 应用程序时,出现以下错误:
The path template
Users({userId})/Tags
on the action 'UserTags' in controllerUsers
is not a valid OData path template. Found an unresolved path segmentTags
in the OData path templateUsers({userId})/Tags
.
ODataRoute
的限制非常严格,您的用户实体必须有一个名为 'Tags' 的集合 属性 才能工作。
使用以下代码,我可以正常工作:
public class UserController : ODataController
{
[HttpGet]
[System.Web.OData.Routing.ODataRoute("User({userId})/Tags")]
public IHttpActionResult GetTags([FromODataUri]int userId)
{
//...
}
}
public class User
{
[Key]
public int Id { get; set; }
public List<Tag> Tags { get; set; }
}