AngularJS .Net WebAPI Télécharger l'image et de l'enregistrer dans la base de données (MSSQL)
Je suis en train de charger une Image(peut être lier à un modèle avec un type de données byte[]) à partir de l'INTERFACE utilisateur et de l'enregistrer dans la base de données.
Je suis en utilisant AngularJS connexion .NET WebAPI et l'enregistrer sur MSSSQL Serveur
Je ne peux pas trouver un bon exemple de l'utilisation de ces technologies.
Question:
Quelle approche est la meilleure à utiliser? comme ng-télécharger, FormData, ArrayBuffer, convertir l'image au octet, etc. et comment allez-vous l'attraper de WebAPI?
Merci!
Quant à la stratégie de stockage d'objets blob ou fichiers, reportez-vous à ce lien: stackoverflow.com/questions/1347461/...
OriginalL'auteur user3505453 | 2014-04-07
Vous devez vous connecter pour publier un commentaire.
Je travaille sur cette fonctionnalité de ces jours. Je partage mon expérience (évidemment, il peut être amélioré).
Les éléments clés que j'utilise sont:
la pile est:
Angular.js Image Uploader
Comme je l'ai dit, j'utilise angulaire de fichier uploader. Il n'y a pas tellement de choses à ajouter à la documentation officielle, mais mon uploader configuration est:
Pour envoyer l'id de l'utilisateur de la requête http et d'accorder l'accès à l'autorisés route
WebApi 2 Action
Le service ne fait l'essentiel du travail. Voici la code.
Comme vous pouvez le voir, dans cette phase, je fais deux redimensionnements de l'image (un pour la photo de profil de l'utilisateur et l'autre pour l'utilisateur de la vignette). En plus de cela, je convertis le byte[] dans la chaîne et de préparer la chaîne pour la prochaine récupérations. Faisant cela, je l'ajoute au début de cette partie "data:image/gif;base64,", de sorte que, dans la prochaine entité lectures (par EntityFramework) je n'ai pas à manipuler le résultat de plus et je peux les mettre directement dans angulaire modèle:
Évidemment, Il peut être fait autrement, mais c'est mon cas.
Base de données
Pour le moment j'utilise simplement nvarchar pour le stockage des images.
C'est mon premier essai de sorte qu'il peut être amélioré pour sûr (si vous avez des conseils, n'hésitez pas).
Dans ma réponse, vous pouvez trouver le code, en particulier le service utilisé pour enregistrer les images de la db,
OriginalL'auteur wilver