Paramètre pour l'API POST Web 4 méthode null lorsqu'il est appelé à partir de Fiddler avec le corps JSON
J'ai une question très simple API Web 4 contrôleur de certains anciens code de base de données. L'entité comme comme ceci:
public class Employee
{
public string EmploymentStatus { get; set; }
public string CompanyCode { get; set; }
public string Division { get; set; }
public string OrgLevel1Code { get; set; }
public string OrgLevel2Code { get; set; }
public string OrgLevel3 { get; set; }
public string StoreName { get; set; }
public string EmployeeNumber { get; set; }
public string EmployeeFirstName { get; set; }
public string EmployeeMiddleInitial { get; set; }
public string EmployeeLastName { get; set; }
public string EmailAddress { get; set; }
public string JobCode { get; set; }
public string DateInJob { get; set; }
public string OriginalHire { get; set; }
}
La méthode ressemble à ceci:
public HttpResponseMessage PostEmployee(Employee item)
{
DataHelpers.AddUser(item.CompanyCode, item.Division, item.OrgLevel1Code, item.OrgLevel2Code, item.OrgLevel3, item.EmployeeFirstName, item.EmployeeMiddleInitial, item.EmployeeLastName, item.EmailAddress, item.JobCode, item.OriginalHire);
var response = Request.CreateResponse<Employee>(HttpStatusCode.Created, item);
string uri = Url.Link("DefaultApi", new { id = item.EmployeeNumber });
response.Headers.Location = new Uri(uri);
return response;
}
Quand je POSTE par Fiddler comme ceci:
POST /api/identity HTTP/1.1
User-Agent: Fiddler
Host: localhost:1421
Content-Length: 382
contentType: "application/json; charset=utf-8"
dataType: 'json'
{
"employmentStatus":"zzz",
"companyCode":"Titlemax",
"division":"bbb",
"orgLevel1Code":"ccc",
"orgLevel2Code":"ddd",
"orgLevel3":"eee",
"storeName":"fff",
"employeeNumber":"12343",
"employeeFirstName":"Bill",
"employeeMiddleInitial":"A",
"employeeLastName":"sempf",
"emailAddress":"[email protected]",
"jobCode":"GM",
"dateInJob":"8/7/2005",
"originalHire":"8/7/2005"
}
J'obtiens une exception .NET et l'élément paramètre est null.
{"Message":"An error has occurred.","ExceptionMessage":"Object reference not set to an instance of an object.","ExceptionType":"System.NullReferenceException"}
Ce qui me manque? Je suis nouveau sur le Web API. Merci à l'avance.
source d'informationauteur Bill Sempf
Vous devez vous connecter pour publier un commentaire.
Je pense que c'est le format de la requête dans un violon. Essayez de supprimer les citations de l'entête Content-Type
À partir de l'onglet Composer:
En-Têtes De Requête:
Du Corps De La Requête:
Réponse:
Votre fiddler en-tête de requête devrait ressembler à ceci:
Content-Type: application/json