|
My point still stands. The way it works right now will ALWAYS fail on DELETE for anything other than basic parameters like an int or Guid.
One of the gapping holes in the samples and I think based on that your thinking in WebAPI is how to do batch operations.
DELETE is easy... except batch with DELETE right now in Web API doesn't work without a magical decorator which is neither discoverable nor something anyone has ever seen until .NET 4.5 because attributes on parameters on a method call is brand
new and highly non-intuitive btw.
GET is batch by definition because it returns a batch. But it should also allow GET?ID=XXX,ID=YYY and it should also understand like DELETE so that you can pass an array of items to get. (Of course OData solves this, but the basic case still stands)
PUT AND POST both need to be able to do so, and the samples should show this. They work of course because you post a json array and it maps nicely to Ienumerable.
See the problem? The only one that doesn't work as expected out of the box is DELETE. The rest just work. DELETE does not. I fails and the only way to make it work is to put some unknown adornment it to tell it to process what is implicit based on the RFC
for the HTTP transport spec.
So you have something that won't work and should work out of the box and requires a bizzare hack to make work what should work by default.
Since MVC and Web API are convention over configuration, this decision is completely inconsistent with the entire platform. If I define delete, it should work according to the specs automatically without having to configure it.
|