IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Windows Phone .NET Discussion :

Utilisation de fichiers content et ressources ?


Sujet :

Windows Phone .NET

  1. #1
    Membre à l'essai
    Inscrit en
    Mai 2011
    Messages
    51
    Détails du profil
    Informations forums :
    Inscription : Mai 2011
    Messages : 51
    Points : 17
    Points
    17
    Par défaut Utilisation de fichiers content et ressources ?
    Bonjour,

    J'aimerais utiliser un fichier déjà existant que j'implémente dans le projet. Pour cela j'ai entendu parler des ressources et de content. Apparement cela ferait ce que je veux mais je n'arrive pas à trouver un tuto assez complet pour me renseigner sur la façon de procéder. Je suis débutant en développement Windows Phone et je viens de me mettre au C# depuis seulement quelques mois.

    Merci d'avance.

  2. #2
    Membre habitué Avatar de danuz
    Homme Profil pro
    Expert .NET (WPF, Silverlight, Windows Phone) chez Soat
    Inscrit en
    Avril 2003
    Messages
    102
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Expert .NET (WPF, Silverlight, Windows Phone) chez Soat

    Informations forums :
    Inscription : Avril 2003
    Messages : 102
    Points : 153
    Points
    153
    Par défaut
    Bonjour :-),

    Je ne comprends vraiment ton besoin. Quel est le type de ton fichier ? Image ? Xml ? fichier .cs ?

    Peux-tu expliquer davantage s'il te plait ?

    Quand on parle de content / resources comme tu l'as fait là, c'est pour pouvoir inclure ou pas un fichier dans l'assemblage. (ton binaire).

    Donc, si tu peux préciser... Merci beaucoup (^__^)
    Ma réponse vous a aidé ? Pensez à voter pour elle. N'oubliez pas non plus de changer le statut de votre thread en Résolu.

    Mon blog
    Ma société: So@t

  3. #3
    Membre à l'essai
    Inscrit en
    Mai 2011
    Messages
    51
    Détails du profil
    Informations forums :
    Inscription : Mai 2011
    Messages : 51
    Points : 17
    Points
    17
    Par défaut
    Oui c'est vrai que ce n'est pas très clair ce que j'ai dit En fait j'ai un fichier de configuration en xml que je voudrais pouvoir lire et écrire dessus dans mon application. Mais je ne sais pas où stocker ce fichier pour qu'il soit lisible à partir de l'application.

    J'ai fait une version Android, et j'avais mis le fichier de configuration dans le dossier Assets, et lors de la première exécution de l'application, je copiais le fichier sur la mémoire interne, et à partir de là je pouvais lire le fichier et le modifier.

    J'aimerai maintenant faire à peu près la même chose sur Windows Phone 7, l'essentiel étant d'accéder à un fichier qui est compris dans l'application, qu'on puisse le lire et écrire dessus et que quand on efface l'application, ce fichier s'efface aussi.

    Voila, j'espere avoir été plus clair.

  4. #4
    Membre habitué Avatar de danuz
    Homme Profil pro
    Expert .NET (WPF, Silverlight, Windows Phone) chez Soat
    Inscrit en
    Avril 2003
    Messages
    102
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Expert .NET (WPF, Silverlight, Windows Phone) chez Soat

    Informations forums :
    Inscription : Avril 2003
    Messages : 102
    Points : 153
    Points
    153
    Par défaut
    D'accord, je comprends mieux.

    Sous Windows Phone, tu as l'isolated storage, un espace de stockage dédié à ton application (une boite noire dans laquelle tu peux écrire). Tu peux écrire que ce soit des fichiers, ou alors, des données comme des clés (clés/valeurs).

    Voici un lien qui t'en apprend un peu plus et te montre comment l'utiliser :

    http://create.msdn.com/en-US/educati...olated_Storage

    Tu n'auras qu'à écrire dans l'Isolated Storage. C'est plus simple, et plus rapide que d'avoir à écrire un système de lecture / écriture de fichier.
    Ma réponse vous a aidé ? Pensez à voter pour elle. N'oubliez pas non plus de changer le statut de votre thread en Résolu.

    Mon blog
    Ma société: So@t

  5. #5
    Membre à l'essai
    Inscrit en
    Mai 2011
    Messages
    51
    Détails du profil
    Informations forums :
    Inscription : Mai 2011
    Messages : 51
    Points : 17
    Points
    17
    Par défaut
    Merci, j'ai vu un peu le tuto, mais j'ai un petit soucis. Là, j'ai mon fichier xml, et j'aimerai copier le contenu dans un nouveau fichier qui sera placer dans l'isolated storage...mais je ne vois pas comment l'application pourra accéder au fichier xml pour copier son contenu...

  6. #6
    Membre expérimenté Avatar de DotNET74
    Homme Profil pro
    Watch R&D Engineer & Apprenti .NET
    Inscrit en
    Août 2003
    Messages
    1 986
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 51
    Localisation : France

    Informations professionnelles :
    Activité : Watch R&D Engineer & Apprenti .NET

    Informations forums :
    Inscription : Août 2003
    Messages : 1 986
    Points : 1 453
    Points
    1 453
    Par défaut
    Hello,

    Personnellement j'utilise ça et pas besoin de me prendre la tête à lire ou écrire

    http://msdn.microsoft.com/en-us/real...pment/gg266421
    La Théorie c'est quand on comprends tout mais que rien ne fonctionne.
    La Pratique c'est quand tout fonctionne mais qu'on ne sait pas pourquoi !

    Si vous aimez ma réponse, cliquez sur la main verte Merci

  7. #7
    Membre habitué Avatar de danuz
    Homme Profil pro
    Expert .NET (WPF, Silverlight, Windows Phone) chez Soat
    Inscrit en
    Avril 2003
    Messages
    102
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Expert .NET (WPF, Silverlight, Windows Phone) chez Soat

    Informations forums :
    Inscription : Avril 2003
    Messages : 102
    Points : 153
    Points
    153
    Par défaut
    Ton fichier comprend beaucoup de données ? Ce sont des données de configuration ?
    Tu peux nous montrer un exemple de ce fichier stp ?
    Ma réponse vous a aidé ? Pensez à voter pour elle. N'oubliez pas non plus de changer le statut de votre thread en Résolu.

    Mon blog
    Ma société: So@t

  8. #8
    Membre à l'essai
    Inscrit en
    Mai 2011
    Messages
    51
    Détails du profil
    Informations forums :
    Inscription : Mai 2011
    Messages : 51
    Points : 17
    Points
    17
    Par défaut
    Non il n'y a pas beaucoup de données dans le fichier de configuration, par contre, à un moment, il faut que l'application crée un fichier de synchronisation qui peut prendre beaucoup de place (en version console, il y a des fichier xml allant jusqu'à 30mo). Voila à quoi ressemble le fichier de configuration :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
     
    <?xml version="1.0" encoding="utf-8" ?>
    <configuration>
         <configSections>
              <section name="*****" type="***********,******" />
              </configSections>
     
              <appSettings>
                   <!-- Utilisateur de l'application-->
                   <add key="utilisateur" value="user"/>
                   <!-- Mot de passe-->
                   <add key="motDePasse" value="pass"/>
    	  <!-- Url de base pour les services-->
                   <add key="servicesUrl" value="http://webservicelink" />
                   <!-- Url de base pour les services du centre appel-->
                   <add key="callCenterUrl" value="http://localhost/CallCenterServices" />
                   <!-- Gestion de la synchro -->
                   <add key="synchro.compteur.releveLibre" value="False" />
                   <add key="synchro.compteur.releveTournee" value="False" />
                   <add key="synchro.forcerNotificationAuto" value="True" />
                   <add key="synchro.intervention.borneInf" value="-2" />
                   <add key="synchro.intervention.borneSup" value="2" />
                   <add key="synchro.intervention.horizon" value="0" />
                   <add key="synchro.intervention.responsable" value="False" />
                   <add key="synchro.intervention.demandeur" value="False" />
                   <add key="synchro.intervention.ressource" value="True" />
                   <add key="synchro.calendrier.borneInf" value="-2" />
                   <add key="synchro.calendrier.borneSup" value="2" />
                   <add key="synchro.calendrier.service" value="False" />
                   <add key="synchro.compteur.ordreTournee" value="NUMERO" />
                   <add key="worklfow.intervention.actif" value="True" />
                   <add key="menu.action1" value="" />
                   <add key="menu.action2" value="" />
                   <add key="menu.action3" value="" />
                   <add key="synchro.parc.nbHistoriqueITV" value="3" />
        </appSettings>	
    </configuration>
    Par contre, mon maître de stage ne veut pas passer par un autre moyen pour stocker ces information, par exemple, sous Android il y avait apparemment un moyen de déterminer les préférences utliisateur pour l'application, et il m'a dit qu'il fallait que j'utilise ce fichier de configuration. Je pense que ça impliquerai trop de changement dans le code du Framework que j'ai à disposition.

    @DotNET74 : je vais lire ce que tu m'as passé, je t'en dirai des nouvelles. Merci.

  9. #9
    Membre à l'essai
    Inscrit en
    Mai 2011
    Messages
    51
    Détails du profil
    Informations forums :
    Inscription : Mai 2011
    Messages : 51
    Points : 17
    Points
    17
    Par défaut
    @DotNET74 : C'est un tuto sur la persistance des données avec l'isolated storage ça je crois, je n'ai pas lu tout le tuto mais je n'ai pas l'impression que cela correspond à mon problème. Moi j'ai un fichier xml sur mon disque dur, et j'aimerai que l'application puisse y accéder...vu qu'on ne peut apparemment pas accéder au systeme de fichier via un chemin relatif ou absolu, il faut faire comme sous android, c'est à dire appeler des méthodes qui permettent d'accéder à des espace de stockage prédéterminés pour une application. Le problème est qu'il n'y a pas d'accès direct dans l'arboresscence du projet pour y stocker le fichier xml qui est sur mon disque dur de mon PC, pour ensuite le copier dans l'espace de stockage de l'application Windows Phone 7, ou carrément l'utiliser depuis cet espace de stockage s'il aurait été accessible et qu'il aurait les droit en lecture et en écriture.

  10. #10
    Membre habitué Avatar de danuz
    Homme Profil pro
    Expert .NET (WPF, Silverlight, Windows Phone) chez Soat
    Inscrit en
    Avril 2003
    Messages
    102
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Expert .NET (WPF, Silverlight, Windows Phone) chez Soat

    Informations forums :
    Inscription : Avril 2003
    Messages : 102
    Points : 153
    Points
    153
    Par défaut
    Alors, tu pourras expliquer ceci à ton maître de stage.
    Sous Windows Phone, il n'y a plus de fichiers de configuration comme sous les autres environnements .NET. On ne peut pas non plus travailler sous Android comme sous Windows Phone ou vice versa, donc, il faut prendre les réflexes adaptés à la plateforme sur laquelle tu travailles (^__^). (Sauf si sous Android vous travaillez avec MonoTouch ...). Tu ne peux pas utiliser ce fichier de configuration (Sinon, tu devras implémenter le mécanisme qui permet de le lire et d'utiliser ses différentes valeurs).

    Tu peux créer des clés de configurations comme ceci :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    readonly ISolatedStorageSettings _settings = IsolatedStorageSettings.ApplicationSettings;
     
    _settings.Add("utilisateur", "user");
    _settings.Add("motDePasse", "pass");
    _settings.Add("servicesUrl", "http://webservicelink");
    _settings.Add("synchro.compteur.releveLibre", false);
    etc...
    Pour récupérer leur valeur :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    string utilisateur = (string)_settings["utilisateur"];
    bool releveLibre = (bool)_settings["synchro.compteur.releveLibre"];
    C'est encore une fois à ce que sert les settings de l'isolated storage .

    Ensuite, concernant la création de ton fichier, tu n'as aucune autre solution que de le créer dans l'isolated storage.

    Voici un lien qui te montre comment le faire : http://www.windowsphonegeek.com/tips...-manipulations

    Sinon, tu verras que dans le sommaire de cette page, il y a beaucoup d'articles sur les manipulations dans l'isolated storage. ça devrait largement t'aider je pense à atteindre ton objectif !
    Ma réponse vous a aidé ? Pensez à voter pour elle. N'oubliez pas non plus de changer le statut de votre thread en Résolu.

    Mon blog
    Ma société: So@t

  11. #11
    Membre à l'essai
    Inscrit en
    Mai 2011
    Messages
    51
    Détails du profil
    Informations forums :
    Inscription : Mai 2011
    Messages : 51
    Points : 17
    Points
    17
    Par défaut
    et bien en fait, sous android, je travaillais en effet avec monodroid...en fait j'utilisai un configuration manager réadapté pour utiliser le fichier de configuration. Ce n'est pas moi qui décide pour ce projet, et je ne connais pas tout le code, donc je ne peux pas vraiment contredire mon maitre de stage , surtout qu'il avait trouvé la solution sous android, donc ça devrait être possible sous windows phone (enfin j'espere...)...

    Là, j'ai mis le fichier dans le projet, je le charge dans un Xdocument...apparement j'arrive a afficher le doc xml sur l'emulateur...je vais faire d'autres tests pour étudier toutes les possibilités...

  12. #12
    Membre habitué Avatar de danuz
    Homme Profil pro
    Expert .NET (WPF, Silverlight, Windows Phone) chez Soat
    Inscrit en
    Avril 2003
    Messages
    102
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Expert .NET (WPF, Silverlight, Windows Phone) chez Soat

    Informations forums :
    Inscription : Avril 2003
    Messages : 102
    Points : 153
    Points
    153
    Par défaut
    Pas de problèmes . On est là si tu as d'autres questions.
    Ma réponse vous a aidé ? Pensez à voter pour elle. N'oubliez pas non plus de changer le statut de votre thread en Résolu.

    Mon blog
    Ma société: So@t

  13. #13
    Membre à l'essai
    Inscrit en
    Mai 2011
    Messages
    51
    Détails du profil
    Informations forums :
    Inscription : Mai 2011
    Messages : 51
    Points : 17
    Points
    17
    Par défaut
    Ok, merci pour vos aides en tout cas J'aurai surement d'autres questions...mais dans un autre post peut être (concernant la manipulation des fichiers xml)

  14. #14
    Membre expérimenté Avatar de DotNET74
    Homme Profil pro
    Watch R&D Engineer & Apprenti .NET
    Inscrit en
    Août 2003
    Messages
    1 986
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 51
    Localisation : France

    Informations professionnelles :
    Activité : Watch R&D Engineer & Apprenti .NET

    Informations forums :
    Inscription : Août 2003
    Messages : 1 986
    Points : 1 453
    Points
    1 453
    Par défaut
    J'avais bien compris ton problème.

    Ce que je t'ai donné est une classe fournie par Microsoft qui permet de lire et écrire dans IsolatedStorage d'une application par un système automatique de sérialisation.

    Exemple:

    tu as une classe A comme suit:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    public class A
    {
     public string Toto {get;set;}
     public int Yoyo {get;set;}
    }
    Donc avec la classe de Microsoft tu fais comme ça:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    IsolatedStorageHelpers.SaveObject("Monfichier", MyVariableOfTypeA);
    Et la lecture se fait comme ça:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    MyVariableOfTypeA = IsolatedStorageHelpers.GetObject("Monfichier");
    C'est une manière plus générale que l'IsolatedStorageSettings pour écrire des données dans l'IsolatedStorage d'une application.

    A toi de voir
    La Théorie c'est quand on comprends tout mais que rien ne fonctionne.
    La Pratique c'est quand tout fonctionne mais qu'on ne sait pas pourquoi !

    Si vous aimez ma réponse, cliquez sur la main verte Merci

  15. #15
    Membre à l'essai
    Inscrit en
    Mai 2011
    Messages
    51
    Détails du profil
    Informations forums :
    Inscription : Mai 2011
    Messages : 51
    Points : 17
    Points
    17
    Par défaut
    Oui j'ai utilisé l'isolated storage, je n'avais pas bien compris comment l'utiliser au début. Je n'en suis pas encore à sauvegarder mon fichier (ca viendra). La j'essai de manipuler le fichier xml.

    Merci en tout cas pour ton aide et le lien que tu m'as donné.

  16. #16
    Membre expérimenté Avatar de DotNET74
    Homme Profil pro
    Watch R&D Engineer & Apprenti .NET
    Inscrit en
    Août 2003
    Messages
    1 986
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 51
    Localisation : France

    Informations professionnelles :
    Activité : Watch R&D Engineer & Apprenti .NET

    Informations forums :
    Inscription : Août 2003
    Messages : 1 986
    Points : 1 453
    Points
    1 453
    Par défaut
    Mais justement la force de cette classe c'est que tu n'as pas besoin de manipuler un fichier, c'est fait automatiquement
    La Théorie c'est quand on comprends tout mais que rien ne fonctionne.
    La Pratique c'est quand tout fonctionne mais qu'on ne sait pas pourquoi !

    Si vous aimez ma réponse, cliquez sur la main verte Merci

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [Débutant] Utiliser un fichier excel en ressources
    Par r.morel dans le forum VB.NET
    Réponses: 7
    Dernier message: 03/03/2015, 22h05
  2. [2.0][C#] Utilisation des fichiers de ressources
    Par CUCARACHA dans le forum ASP.NET
    Réponses: 1
    Dernier message: 08/10/2006, 23h17
  3. [VB.NET 2.0] Utiliser un fichier EXE inclu comme ressource
    Par MatP dans le forum Windows Forms
    Réponses: 1
    Dernier message: 10/08/2006, 17h29
  4. [NASM] Utiliser des fichiers ressources
    Par trax44 dans le forum Assembleur
    Réponses: 8
    Dernier message: 26/09/2004, 18h42

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo