ODataを使用するようにWebサービスを変換中です。 私は以下のようにODataControllerの実装を作成しました:OData 4 AspNet:パラメータでGETが機能しない
public class PersonController : ODataController
{
public PersonController()
{
}
public IHttpActionResult Get()
{
return Ok(new Person());
}
public IHttpActionResult Get([FromODataUri] int key)
{
return Ok(new Person());
}
protected override void Dispose(bool disposing)
{
}
}
そしてそうのようなモデルを登録:
ウェブアプリは問題なく展開、そして私が呼ぶとき最初の機能が動作します。
http://localhost:9200/odata/Customer
->
{
"@odata.context":"http://localhost:9200/odata/$metadata#Person/$entity","Name":"John"
}
ただし、http://localhost:9200/odata/Customer(1)の呼び出しに失敗した場合、サーバーログのトレースは、ルートが見つからないことを示します。
iisexpress.exe Information: 0 : Response, Status=404 (NotFound), Method=GET, Url=http://localhost:9200/odata/Person(1), Message='Content-type='application/xml; charset=utf-8', content-length=unknown'
ODataRoutePrefix、ODataRoute、EnableQueryをメソッドに使用して異なる属性順列を試しましたが、今のところ何も役立たないようです。私が見たチュートリアルではこれがうまくいくはずだと言われています。誰にもアイデアはありますか?