comment télécharger un fichier vidéo .wmv et enregistrez-le sur le disque de l'utilisateur lorsque vous cliquez sur un bouton sans utiliser le navigateur enregistrer le lien en tant queComment télécharger une vidéo avec ASP.NET?
Répondre
Ce n'est pas si difficile à faire. Comme le mentionne dtb, le navigateur de l'utilisateur demandera toujours à l'utilisateur la permission de télécharger le fichier, et il aura la possibilité de choisir où enregistrer le fichier. Donc, ce ne sera pas complètement automatique.
Voici un lien vers un article de blog expliquant comment cela est fait using webforms. La partie principale qui vous intéresse est la suivante:
Response.ContentType = "video/x-ms-wmv";
Response.AppendHeader("Content-Disposition","attachment; filename=MyMovie.wmv");
Response.TransmitFile(Server.MapPath("~/videos/MyMovie.wmv"));
Response.End();
est ici une pile de lien question de débordement qui explique how to do it in MVC.
Basé sur votre commentaire, vous voulez le faire dans silverlight. Je ne suis pas un expert en Silverlight, mais voici une autre question sur le débordement de pile discusses the issue.
Vous pouvez utiliser le WebClient
pour télécharger un fichier wmv et le SaveFileDialog
de demander à l'utilisateur où le mettre: -
void DownloadButton_Click(object sender, RoutedEventArgs e)
{
var dialog = new SaveFileDialog();
if (dialog.ShowDialog().Value)
{
var web = new WebClient();
web.OpenReadCompleted = (s, args) =>
{
try
{
using (args.Result)
using (Stream streamOut = args.UserState As Stream)
{
Pump(args.Result, streamOut);
}
}
catch
{
// Do something sensible when the download has failed.
}
};
web.OpenReadAsync(UriOfWmv, ShowDialog.OpenFile());
}
}
private static void Pump(Stream input, Stream output)
{
byte[] bytes = new byte[4096];
int n;
while((n = input.Read(bytes, 0, bytes.Length)) != 0)
{
output.Write(bytes, 0, n);
}
}
Cependant actuellement il n'y a pas moyen d'afficher des informations de progression de téléchargement. J'espérais que cela entrerait dans le Silverlight 4 mais pour autant que je puisse voir ce n'est pas le cas.
Pourriez-vous s'il vous plaît me donner un exemple de 'args'? De plus, vous n'avez pas utilisé 's' dans le bloc de code' web.OpenReadCompleted = (s, args) => ', qu'est-ce que c'était? –
- 1. Comment télécharger une vidéo dans l'iPhone SDK
- 2. Comment télécharger une vidéo sur YouTube avec Ruby
- 3. télécharger une image et vidéo
- 4. comment télécharger de la vidéo dans asp.net mvc
- 5. JSP Télécharger et télécharger la vidéo
- 6. Télécharger et télécharger des images avec ASP.net
- 7. Facebook ancienne API Télécharger vidéo
- 8. Diffuser la vidéo avec ASP.NET
- 9. Comment ajouter une vidéo?
- 10. télécharger coder vidéo avec ffmpeg et la progression de l'encodage
- 11. Générer une capture d'écran sans télécharger la vidéo entière
- 12. Comment obtenir l'URL d'une vidéo YouTube pour la télécharger?
- 13. Comment télécharger une image avec PHP?
- 14. télécharger la vidéo en utilisant FTP
- 15. télécharger de gros fichiers vidéo sur l'iPhone
- 16. ASP.Net Count Télécharger Clics
- 17. Comment lire une vidéo avec le .NET Compact Framework?
- 18. Impossible de télécharger la vidéo YouTube
- 19. DRUPAL, module vidéo: télécharger manuellement les vignettes
- 20. Comment créer un fichier XML avec ASP.NET et le télécharger?
- 21. fichier asp.net webbrowser télécharger
- 22. Comment télécharger un fichier en asp.net sans recharger une page
- 23. Comment lire une vidéo?
- 24. Comment mesurer télécharger et télécharger la vitesse d'Internet avec Silverlight et ASP.NET MVC
- 25. Comment utiliser asp.net obtenir la durée vidéo
- 26. Comment intégrer une vidéo flash sur une page Web?
- 27. Comment stocker une vidéo dans une application Web vidéo
- 28. Télécharger la vidéo avant de voir Iphone sdk
- 29. asp.net forums télécharger
- 30. télécharger des pages asp.net
Est-ce que 'Response.CacheControl = "No-Cache" n'est pas nécessaire? Et quelle est la différence entre 'WriteFile' et' TransmitFile'? – abatishchev
@abatishchev: Selon MSDN, "No-Cache" est la valeur par défaut. Donc, vous n'avez pas besoin de le définir. La différence entre WriteFile et TransmitFile est que Transmit ne met pas le contenu en mémoire tampon. Voir: http://forums.asp.net/t/1513111.aspx –
Mais je veux l'utiliser dans l'application silverlight et il n'y a pas d'espace de noms system.web donc je ne peux pas utiliser la réponse comment puis-je le lire en octet [] ?? est-ce possible ? – MirooEgypt