2

J'ai un composant de téléchargement flash que je veux utiliser pour télécharger plusieurs fichiers. Je l'utilise dans une application MVC et ce que je veux faire, c'est que l'utilisateur sélectionne les fichiers qu'il veut télécharger, il les télécharge et affiche une page montrant tous les fichiers qu'ils ont téléchargés afin qu'ils puissent ajouter une description et sélectionner où les enregistrer, puis enregistrer les fichiers.Flash uploader et ASP.net MVC

Au moment où les fichiers sont téléchargés le composant flash appelle un contrôleur pour traiter les fichiers, ce bit fonctionne très bien, je peux obtenir les fichiers téléchargés et faire ce que j'aime avec eux. Le problème est que je ne peux pas simplement rediriger vers une vue une fois que les contrôleurs ont fait leur travail, parce que c'est le composant flash qui appelle le contrôleur, pas la page et donc rien ne se passe quand vous essayez de le faire.

J'avais essayé d'enregistrer les fichiers dans la session, puis transférer l'utilisateur à la fin du téléchargement en utilisant du code dans l'actionScript flash, cela ne fonctionne cependant pas, la session est toujours nulle. J'avais aussi envisagé d'enregistrer les fichiers dans un emplacement temporaire, puis sur la page d'affichage en listant simplement tous les fichiers dans l'emplacement temporaire, mais cela impliquera d'enregistrer les fichiers deux fois, une fois dans le répertoire temporaire puis à l'endroit réel l'utilisateur veut les mettre, ce que je suppose sera lent.

Des idées sur la meilleure façon de faire cela?

Répondre

0

Votre site utilise-t-il l'authentification par cookie? Si tel est le cas, l'uploader flash doit inclure le cookie d'authentification lors du téléchargement sinon le téléchargement sera vu comme provenant d'un nouvel utilisateur - ceci expliquerait vos valeurs nulles dans l'état de la session. Si vous ne parvenez pas à obtenir Flash pour publier le cookie, vous devrez identifier l'utilisateur dans l'URL de téléchargement.

Vous devriez garder l'état de session au minimum ou, mieux encore, ne pas l'utiliser du tout, donc stocker de grandes quantités de données telles que des images est une mauvaise idée. Avec nos applications, nous enregistrons tous les fichiers téléchargés dans la base de données, puis leur donnons un Guid unique qui est ensuite utilisé pour les récupérer/les afficher plus tard. Dans la base de données, les images peuvent être associées à un utilisateur et, dans votre cas, être marquées comme étant simplement téléchargées de sorte que lorsque vous redirigez l'utilisateur vers la page d'informations supplémentaires, vous savez quelles images afficher.

mais cela est alors va impliquer sauver les fichiers deux fois, une fois dans le répertoire temporaire puis au lieu réel l'utilisateur souhaite les mettre

En ce qui concerne l'endroit où les fichiers sont enregistrés sur le serveur, vous ne devriez pas permettre à l'utilisateur de déterminer où les fichiers sont sauvegardés.