comment télécharger un fichier volumineux avec ASP.NET MVC4 Web Api avec la barre de progression
comment puis-je télécharger un fichier volumineux avec ASP.NET MVC4 Api Web
et aussi obtenir un progrès?
j'ai vu ce post et je comprends comment gérer le fichier téléchargé, mais comment je peux obtenir les données de progression?
Comment Accepter un Fichier POST
merci de ne pas m'envoyer des liens pour télécharger des produits.
je veux comprendre comment les traiter dans le MVC4 l'Api Web de façon...
voici un exemple de code de manutention du chargement d'un fichier dans MVC4 WebApi
public async Task<HttpResponseMessage> Post()
{
if (Request.Content.IsMimeMultipartContent())
{
var path = HttpContext.Current.Server.MapPath("~/App_Data");
var provider = new MultipartFormDataStreamProvider(path);
await Request.Content.ReadAsMultipartAsync(provider).ContinueWith(t =>
{
if (t.IsFaulted || t.IsCanceled)
throw new HttpResponseException(HttpStatusCode.InternalServerError);
});
return Request.CreateResponse(HttpStatusCode.OK);
}
else
{
throw new HttpResponseException(Request.CreateResponse(HttpStatusCode.NotAcceptable, "This request is not properly formatted"));
}
}
maintenant, quand
await Request.Content.ReadAsMultipartAsync(provider)
comment puis-je obtenir comment octets chargés?
source d'informationauteur ygaradon
Vous devez vous connecter pour publier un commentaire.
Il y a une limitation de la taille des fichiers à télécharger par défaut à deux endroits. L'un au niveau de la demande, et , deuxièmement, si vous l'hébergement de services internet (IIS), puis sur le serveur web. J'ai ajouté quelques configs comme mentionné dans ce bloget j'ai été en mesure de télécharger un 36 mo fichier sans aucun problème. J'ai posté l'extrait de code ci-dessous.
Fondamentalement
1.
2.
Est facile de trouver de la taille du fichier chargé dans le serveur si vous le souhaitez. Dans votre code
lors de la lecture par le biais de la filedata dans le ruisseau, pour chaque élément dans vous fichier de données, vous pouvez lire le nom de fichier local comme indiqué ci-dessous.
Espère que cette aide. Je me demande pourquoi cela a été marquée vers le bas?