Supposons que nous ayons un formulaire html qui puisse afficher l'image du produit avec le nom et la description du produit.Reliure de modèle directe avec Multipart formdata dans asp.net web Api 2.0?
Nom du produit: Description: Image FileJe veux récupérer les valeurs de champ 'ProductName' et 'Description' sans utiliser formdata fournisseur.
API Web Controller -
if (!Request.Content.IsMimeMultipartContent())
{
throw new HttpResponseException(HttpStatusCode.UnsupportedMediaType);
}
try
{
// Read the form data.
await Request.Content.ReadAsMultipartAsync(provider);
// Show all the key-value pairs.
foreach (var key in provider.FormData.AllKeys)
{
foreach (var val in provider.FormData.GetValues(key))
{
Trace.WriteLine(string.Format("{0}: {1}", key, val));
}
}
}
catch (System.Exception e)
{
return Request.CreateErrorResponse(HttpStatusCode.InternalServerError, e);
}
Nous pouvons facilement obtenir toute valeur de la propriété. Mais peut-on faire une fonction api web comme ci-dessous:
[HttpPost]
public IHttpActionResult Upload(ProductInfo model){
return Content(HttpStatusCode.OK, true);
}
Public Class ProductInfo {
public string ProductName{ get; set; }
public string Description{ get; set; }
}
Il affiche l'erreur comme suit du contrôleur WebAPI Impossible de lier plusieurs paramètres (« modèle » et « fichiers ») à la demande de content.I ont essayé avec le modèle commun mais n'a pas obtenu success.I ont également vérifié les données par le violoniste, il semble tout parfait. –