In my web api controller i have a function with following codes
       [HttpPost]         public HttpResponseMessage Post(string schooltypeName)         {             _schoolTypeService.RegisterSchoolType(schooltypeName);              var message = Request.CreateResponse(HttpStatusCode.Created);              return message;         }   When i am calling with fiddler i am getting this error
{"Message":"The requested resource does not support http method 'POST'."}   my fiddling parameters are
Header
User-Agent: Fiddler  Host: myhost:8823  Content-Type: application/json; charset=utf-8  Content-Length: 26   Request body
{"schooltypeName":"Aided"}   Requesting url are
http://myhost:8823/SchoolType   ( i configured url ,GET is working with this url)
Whats wrong here ?
POST. In web services, POST requests are used to send data to the API server to create or update a resource. The data sent to the server is stored in the request body of the HTTP request. The simplest example is a contact form on a website.
Change your action to be like Post([FromBody]string schooltypeName) as by default string type is expected to come Uri.
Updated:
 Change your body to just "Aided" as currently you would need a class to make the deserialiation work otherwise (ex:class School { public string SchoolTypeName { get; set; } }
See the using namespace at the top of the controller, if you're using System.Web.Mvc, then this problem might be occurred:
Use this:
using System.Web.Http; 
                        If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With