Bonjour,
J'aimerais que lorsque je lance mon application, cette dernière me crée le fichier XML app.config permettant les connexions aux objets WCF sur un réseau local.
Si j'écris en dur un app.config que j'ajoute au projet, cela marche. Maintenant j'aimerais que cet app.config s'écrive tout seul au lancement de mon application et que lors de la création de mon service, il utilise l'app.config créé précédemment.
Je crée donc un fichier XML avec les information suivant correspondant à mon app.config
est-ce bien comme cela qu'il faut faire ou faut-il qu'il existe déjà un app.config dans mon projet que je mets à jour ?
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 Postes.Items.Add("PIWKS267"); allPostesAndIp.Add("PIWKS267", "localhost"); Postes.Items.Add("Poste2"); allPostesAndIp.Add("Poste2", "localhost"); XmlTextWriter config = new XmlTextWriter("app.config",System.Text.Encoding.UTF8); config.Formatting = Formatting.Indented; config.WriteStartDocument(); config.WriteStartElement("configuration"); config.WriteStartElement("system.serviceModel"); config.WriteStartElement("bindings"); config.WriteStartElement("basicHttpBinding"); config.WriteStartElement("binding"); config.WriteAttributeString("name", "wsHttpBinding"); config.WriteAttributeString("maxReceivedMessageSize", "2147483647"); config.WriteStartElement("readerQuotas"); config.WriteAttributeString("maxArrayLength", "2147483647"); config.WriteEndElement(); config.WriteEndElement(); config.WriteEndElement(); config.WriteEndElement(); config.WriteStartElement("client"); foreach (string computer in allPostesAndIp.Keys) { config.WriteStartElement("endpoint"); config.WriteAttributeString("address", "http://"+allPostesAndIp[computer]+":8018/Communication"); config.WriteAttributeString("binding", "basicHttpBinding"); config.WriteAttributeString("contract", "Communication.ICommunication"); config.WriteAttributeString("name", computer); config.WriteAttributeString("bindingConfiguration", "wsHttpBinding"); config.WriteEndElement(); } config.WriteEndElement(); config.WriteEndElement(); config.WriteEndElement(); config.Flush(); //vide le buffer config.Close(); // ferme le document
Merci de votre aide
Partager