2010-11-17 6 views
0

Je suis confronté à ce problème. J'ai besoin de joindre des fichiers de mon bureau et de stocker une copie de celui-ci dans le serveur et l'url de l'emplacement du fichier doit être stocké dans une base de données. Cela peut-il être fait en utilisant C#? S'il vous plaît me suggérer comment le faire.Copier un fichier du bureau au serveur

Merci

Répondre

0

J'ai aimé la réponse de Jan Jongboom.

Voici une autre alternative en utilisant l'accès aux fichiers au lieu d'un service WCF:

  1. Obtenez le chemin du fichier d'image, en utilisant System.Win32.OpenFileDialog pour une boîte de dialogue, ou DataObject pour le glisser-et- laissez tomber.
  2. Combine un serveur fixe chemin UNC (comme \\MyServer\Share\Directory) avec le nom du fichier image à l'aide Path.Combine()
  3. Appel File.Copy() pour copier l'image sur le chemin du serveur que vous avez construit à l'étape 2
  4. magasin le chemin du serveur dans la base de données
0

Si l'utilisateur dispose d'informations d'identification valides sur le serveur de la syntaxe \\Server\share\filename peut être utilisé directement dans C#. Si les informations d'identification doivent être établies, vous pouvez débourser à net use ou utiliser le WNetAddConnection2 api

+0

salut .. Pouvez-vous fournir un exemple de code si vous le pouvez .. merci pour l'aide .. – prem

2

Vous aurez besoin d'un service web (WCF/ASMX) sur le serveur où les fichiers doivent être stockés; sous la forme de void StoreFile(byte[] file) { /* store this file and save in db */ }.

Ensuite, vous devrez ajouter une «référence de service» à ce service Web dans votre application WPF, et l'appeler avec Service.StoreFile(File.ReadAllBytes(@"C:\path.exe")).

+0

Merci pour la réponse Jan. Donc, la méthode StoreFile va prendre le fichier et le stocker dans la base de données et tout ce que je dois faire est d'appeler la méthode et passer le nom du fichier à droite? Mais je suis nouveau à Wpf ici, pouvez-vous me dire comment je peux stocker dans la méthode StoreFile ?? – prem

+0

Vous devrez avoir deux projets: 1. Service WCF, qui fonctionne sur le serveur; et 2. Application WPF, qui s'exécute sur le client. Vérifiez pour 1. http://www.codeproject.com/KB/WCF/WCFWebService.aspx, et pour 2. Faites un clic droit sur le dossier 'Références' dans votre projet WPF. Ajoutez ensuite une «référence de service» à votre service WCF nouvellement créé. –

Questions connexes