Bonjour,
Je dois ajouter une API Rest dans un site développé en ASP.NET classique (pas MVC). Pour ce faire j'ai utiliser la formule qui m'a paru la plus simple les annotations [WebMethod) dans une page aspx, exemple
1 2 3 4 5 6
|
[WebMethod]
public static string Aide(string fichier)
{
....
} |
Tout va bien tant que je n'ai pas à gérer les exceptions, mais maintenant j'en ai besoin, aussi je voudrais travailler avec les HttpResponseMessage, exemple :
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23
|
// GetEmployee action
public HttpResponseMessage GetEmployee(int id)
{
try
{
Employee emp = EmployeeContext.Employees.Where(e => e.Id == id).FirstOrDefault();
if (emp != null)
{
return Request.CreateResponse<Employee>(HttpStatusCode.OK, emp);
}
else
{
return Request.CreateErrorResponse(HttpStatusCode.NotFound, " Employee Not Found");
}
}
catch (Exception ex)
{
// Log exception code goes here
return Request.CreateErrorResponse(HttpStatusCode.InternalServerError, "Error occured while executing GetEmployee);
}
} |
Code trouvé à : http://www.c-sharpcorner.com/UploadF...-in-webapi166/
Le problème c'est que cette ligne par exemple ne fonctionne pas :
return Request.CreateErrorResponse(HttpStatusCode.NotFound, " Employee Not Found");
J'ai un message indiquant que :
Le type ou le nom d'espace de noms 'Request' n'existe pas dans l'espace de noms 'System.Net.Http' (une référence d'assembly est-elle manquante*?)
Et pourtant je référence bien System.Net.Http
Est-ce que ce que cherche à faire est faisable et si oui comment ?
Merci pour votre aide
Partager