<?xml version="1.0" encoding="ISO-8859-1"?>

<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/">
	<channel>
		<title>Forum du club des développeurs et IT Pro - C#</title>
		<link>https://www.developpez.net/forums/</link>
		<description><![CDATA[Forum d'entraide sur la programmation C#. Avant de poster -> FAQ C#, Articles C#, Sources C#]]></description>
		<language>fr</language>
		<lastBuildDate>Tue, 14 Apr 2026 10:45:03 GMT</lastBuildDate>
		<generator>vBulletin</generator>
		<ttl>15</ttl>
		<image>
			<url>https://forum.developpez.be/images/misc/rss.png</url>
			<title>Forum du club des développeurs et IT Pro - C#</title>
			<link>https://www.developpez.net/forums/</link>
		</image>
		<item>
			<title>Plus le même serveur distant</title>
			<link>https://www.developpez.net/forums/showthread.php?t=2182857&amp;goto=newpost</link>
			<pubDate>Wed, 25 Mar 2026 14:10:40 GMT</pubDate>
			<description>Bonjour tout le monde, 
...</description>
			<content:encoded><![CDATA[<div>Bonjour tout le monde,<br />
<br />
J'espère que mon sujet ne va pas trop sentir le poisson noyé ...<br />
<br />
J'ai modifié une version des TaskbarGroups, en désignant comme serveur distant un répertoire de mon ordinateur.<br />
<br />
J'ai fait une autre version, pour tester des modifications. C'est pourtant clair que dans ce cas il faut créer une branche dans Git. Bon, routine, flemme, j'ai plutôt créé un autre projet en ajoutant 1 au nom.<br />
<br />
Les deux ont continué de fonctionner, avec des caractéristiques un peu différentes bien sûr.<br />
<br />
C'était surestimer ma mémoire, un jour il a fallu que j'ajoute une fonctionnalité, eh bien je l'ai fait sur la mauvaise version, du coup après je dois fusionner les deux pour avoir les deux fonctionnalités.<br />
<br />
Au moment où je suis satisfait du résultat, l'envoi vers le serveur distant échoue.<br />
<br />
Alors je regarde dans le paramétrage, je vois que j'ai en serveur distant le projet d'origine sur Github, bien entendu je n'ai pas les droits.<br />
<br />
Est-ce que copier du code d'un projet à l'autre peut être à l'origine de ça&nbsp;? Ça me paraît surprenant, mais je peine à me représenter ce que j'aurais pu faire d'autre qui soit arrivé à ce résultat.<br />
<br />
<br />
<br />
***<br />
<br />
Si jamais il y a ici quelqu'un qui a aussi travaillé sur un clone de ce projet, est-il aussi arrivé à la conclusion que garder ouvert le fichier xml est une mauvaise idée, vu que la fermeture demande un délai inconnu, et que la réécriture du coup se plante&nbsp;? Avec pour résultat la perte du groupe en cours d'édition. Il faut programmer deux sauvegardes pour en trouver une intacte après le plantage.<br />
Sans insister sur les données enregistrées dans le répertoire du programme ...</div>

]]></content:encoded>
			<category domain="https://www.developpez.net/forums/f484/dotnet/langages/csharp/">C#</category>
			<dc:creator>Gluups</dc:creator>
			<guid isPermaLink="true">https://www.developpez.net/forums/d2182857/dotnet/langages/csharp/plus-meme-serveur-distant/</guid>
		</item>
		<item>
			<title><![CDATA[[resolu] Exception Manager d'extension]]></title>
			<link>https://www.developpez.net/forums/showthread.php?t=2182651&amp;goto=newpost</link>
			<pubDate>Sun, 15 Mar 2026 12:14:53 GMT</pubDate>
			<description>Bonjour, 
Dans visual studio...</description>
			<content:encoded><![CDATA[<div>Bonjour,<br />
Dans visual studio Quand je vais dans Extensions-&gt; Manages extensions , j'ai une exception :<br />
An exception was encountered while constructing the content of this frame.  This information is also logged in &quot;C:\Users\usi\AppData\Roaming\Microsoft\VisualStudio\17.0_73bb0266\ActivityLog.xml&quot;.<br />
<br />
Exception details:<br />
<i>System.Reflection.TargetInvocationException: Exception has been thrown by the target of an invocation. ---&gt; System.Runtime.InteropServices.COMException: Error HRESULT E_FAIL has been returned from a call to a COM component.<br />
   at Microsoft.VisualStudio.Setup.Configuration.ISetupConfiguration2.GetInstanceForCurrentProcess()<br />
   at Microsoft.VisualStudio.ExtensionManager.Utilities.get_CurrentVsInstance()<br />
   at Microsoft.VisualStudio.ExtensionManager.UI.ExtensionManagerDataContext..ctor(ExtensionManagerToolWindowCreationContext context, StatusReportingManager statusReportingManager, Action OnClearExtensions)<br />
   at Microsoft.VisualStudio.ExtensionManager.UI.ExtensionManagerToolWindowControl..ctor(ExtensionManagerToolWindowCreationContext context, StatusReportingManager statusReportingManager)<br />
   at Microsoft.VisualStudio.ExtensionManager.UI.ExtensionManagerToolWindow..ctor(ExtensionManagerToolWindowCreationContext context)<br />
   --- End of inner exception stack trace ---<br />
   at System.RuntimeMethodHandle.InvokeMethod(Object target, Object[] arguments, Signature sig, Boolean constructor)<br />
   at System.Reflection.RuntimeConstructorInfo.Invoke(BindingFlags invokeAttr, Binder binder, Object[] parameters, CultureInfo culture)<br />
   at System.RuntimeType.CreateInstanceImpl(BindingFlags bindingAttr, Binder binder, Object[] args, CultureInfo culture, Object[] activationAttributes, StackCrawlMark&amp; stackMark)<br />
   at System.Activator.CreateInstance(Type type, BindingFlags bindingAttr, Binder binder, Object[] args, CultureInfo culture, Object[] activationAttributes)<br />
   at System.Activator.CreateInstance(Type type, Object[] args)<br />
   at Microsoft.VisualStudio.Shell.Package.InstantiateToolWindow(Type toolWindowType, Object context)<br />
   at Microsoft.VisualStudio.Shell.Package.&lt;&gt;c__DisplayClass74_0.&lt;CreateToolWindow&gt;g__CreateToolWindowWorker|1()<br />
   at Microsoft.VisualStudio.Shell.Package.CreateToolWindow(Type toolWindowType, Int32 id, UInt32 flags, Object context, Guid persistenceGuid)<br />
   at Microsoft.VisualStudio.Shell.Package.CreateToolWindow(Type toolWindowType, Int32 id, Object context)<br />
   at Microsoft.VisualStudio.Shell.AsyncPackage.&lt;CompleteToolWindowCreationAsync&gt;d__24.MoveNext()<br />
</i><br />
<br />
Je pensais que c'était un problème de mise à jour , j'ai eu faux .<br />
<br />
Merci</div>

]]></content:encoded>
			<category domain="https://www.developpez.net/forums/f484/dotnet/langages/csharp/">C#</category>
			<dc:creator>yann458</dc:creator>
			<guid isPermaLink="true">https://www.developpez.net/forums/d2182651/dotnet/langages/csharp/resolu-exception-manager-d-extension/</guid>
		</item>
		<item>
			<title><![CDATA[[resolu] Il n'y à plus grande monde !]]></title>
			<link>https://www.developpez.net/forums/showthread.php?t=2182648&amp;goto=newpost</link>
			<pubDate>Sat, 14 Mar 2026 22:34:44 GMT</pubDate>
			<description>Bonjour, 
Il y a plus grand...</description>
			<content:encoded><![CDATA[<div>Bonjour,<br />
Il y a plus grand monde qui utilisent visual studio ,au moins la 2022 !<br />
Aprés mise à jour , j'ai message d'erreur n'arrive pas trouver ''hubpilot'' !<br />
Dans projet c# clique droit Generate member  n'existe plus !<br />
<br />
Pas trouver grand chose sur gooooogle , car plus grand monde programment et utilisent visual studio ! moi qui est besoin de ce logiciel !<br />
<br />
<br />
J'avais fait une sauvegarde et  revenir à la version précédente qui marchent !</div>

]]></content:encoded>
			<category domain="https://www.developpez.net/forums/f484/dotnet/langages/csharp/">C#</category>
			<dc:creator>yann458</dc:creator>
			<guid isPermaLink="true">https://www.developpez.net/forums/d2182648/dotnet/langages/csharp/resolu-n-y-plus-grande-monde/</guid>
		</item>
		<item>
			<title>Désabonner un évènement _Leave ne fonctionne pas</title>
			<link>https://www.developpez.net/forums/showthread.php?t=2182113&amp;goto=newpost</link>
			<pubDate>Sat, 14 Feb 2026 19:19:29 GMT</pubDate>
			<description><![CDATA[Bonjour,  
 
C'est un...]]></description>
			<content:encoded><![CDATA[<div>Bonjour, <br />
<br />
C'est un problème tout bête mais un peu délicat à expliquer (d'où les dessins). <br />
<br />
J'ai une ListView. Un clique sur un élément rafraîchit un Panel avec les données de l'élément cliqué. <br />
Chaque élément possède une propriété 1 ou 2. <br />
Je veux que dans le Panel suivant la valeur 1 ou 2, l'onglet d'un TabControl soit sélectionné. <br />
<br />
<img src="https://www.developpez.net/forums/attachments/p674234d1771095617/dotnet/langages/csharp/desabonner-evenement-_leave-ne-fonctionne/leavepb1.jpg/" border="0" alt="Nom : LeavePB1.jpg
Affichages : 223
Taille : 17,6 Ko"  style="float: CONFIG" /><br />
<br />
Le Panel possède un évènement Leave. <br />
Afin qu'un enregistrement automatique des données soit effectué avant d'afficher l'élément suivant de ListView qui aurait été cliqué. <br />
<br />
Quand les éléments successifs de Listview cliqués possèdent la même propriété (1 ou 2), le TabControl n'est pas modifié. <br />
<br />
<img src="https://www.developpez.net/forums/attachments/p674235d1771095796/dotnet/langages/csharp/desabonner-evenement-_leave-ne-fonctionne/leavepb2.jpg/" border="0" alt="Nom : LeavePB2.jpg
Affichages : 213
Taille : 20,2 Ko"  style="float: CONFIG" /><br />
<br />
Le problème survient quand TabControl doit changer (de 1 à 2 ou inversement). <br />
<br />
<img src="https://www.developpez.net/forums/attachments/p674236d1771095862/dotnet/langages/csharp/desabonner-evenement-_leave-ne-fonctionne/leavepb3.jpg/" border="0" alt="Nom : LeavePB3.jpg
Affichages : 211
Taille : 17,5 Ko"  style="float: CONFIG" /><br />
<br />
Leave est déclenché, alors même que la souris ne survole pas le Panel. <br />
Des enregistrement intempestifs de l'élément de ListView à peine cliqué se produisent, en cours d'affichage, avec des effets de bords et perte de données. <br />
<br />
Ma première idée a été d'empêcher l'évenement Leave du Panel de se produire pendant le rafraîchissement de Panel : <br />
<div class="bbcode_container">
	<div class="bbcode_description">Code:</div>
	<hr /><code class="bbcode_code"><table cellspacing="0" cellpadding="0"><tr><td valign="top" width="26"><div style="border: 1px dashed gray; padding-left: 5px; padding-right: 5px; margin-right: 5px; text-align: right; font-family: monospace">1<br />2<br /></div></td><td valign="top"><pre style="margin: 0">&nbsp;
DonneesPanel.Leave -= DonneesPanel_Leave;</pre></td></tr></table></code><hr />
</div>puis, après l'affichage :<br />
<div class="bbcode_container">
	<div class="bbcode_description">Code:</div>
	<hr /><code class="bbcode_code"><table cellspacing="0" cellpadding="0"><tr><td valign="top" width="26"><div style="border: 1px dashed gray; padding-left: 5px; padding-right: 5px; margin-right: 5px; text-align: right; font-family: monospace">1<br />2<br /></div></td><td valign="top"><pre style="margin: 0">&nbsp;
DonneesPanel.Leave += DonneesPanel_Leave;</pre></td></tr></table></code><hr />
</div>Ça ne fonctionne pas. Je ne comprends pas pourquoi, alors que : <br />
<br />
<div class="bbcode_container">
	<div class="bbcode_description">Code:</div>
	<hr /><code class="bbcode_code"><table cellspacing="0" cellpadding="0"><tr><td valign="top" width="26"><div style="border: 1px dashed gray; padding-left: 5px; padding-right: 5px; margin-right: 5px; text-align: right; font-family: monospace">1<br />2<br />3<br /></div></td><td valign="top"><pre style="margin: 0">&nbsp;
DonneesPanel.Enter -= DonneesPanel_Enter;
DonneesPanel.Enter += DonneesPanel_Enter;</pre></td></tr></table></code><hr />
</div>Fonctionne ! <br />
<br />
Dès que TabControl doit changer, l'évènement _Leave de Panel est déclenché. <br />
Un enregistrement de la fiche qui est en train de se charger se produit, sans que je puisse l'empêcher. <br />
<br />
Merci pour votre aide</div>


	<div style="padding:10px">

	

	
		<fieldset class="fieldset">
			<legend>Images attachées</legend>
				<div style="padding:10px">
				<img class="attach" src="https://www.developpez.net/forums/attachments/p674234d1771095617/dotnet/langages/csharp/desabonner-evenement-_leave-ne-fonctionne/leavepb1.jpg/" alt="" />&nbsp;<img class="attach" src="https://www.developpez.net/forums/attachments/p674235d1771095796/dotnet/langages/csharp/desabonner-evenement-_leave-ne-fonctionne/leavepb2.jpg/" alt="" />&nbsp;<img class="attach" src="https://www.developpez.net/forums/attachments/p674236d1771095862/dotnet/langages/csharp/desabonner-evenement-_leave-ne-fonctionne/leavepb3.jpg/" alt="" />&nbsp;
			</div>
		</fieldset>
	

	

	

	</div>
]]></content:encoded>
			<category domain="https://www.developpez.net/forums/f484/dotnet/langages/csharp/">C#</category>
			<dc:creator>AMP29</dc:creator>
			<guid isPermaLink="true">https://www.developpez.net/forums/d2182113/dotnet/langages/csharp/desabonner-evenement-_leave-ne-fonctionne/</guid>
		</item>
		<item>
			<title>C# Unity et mur interactif</title>
			<link>https://www.developpez.net/forums/showthread.php?t=2181960&amp;goto=newpost</link>
			<pubDate>Fri, 06 Feb 2026 07:30:11 GMT</pubDate>
			<description><![CDATA[J'ai développé un jeu...]]></description>
			<content:encoded><![CDATA[<div>J'ai développé un jeu (éclater des ballons) avec Unity et C#.<br />
Le jeu est fonctionnel sur une tablette. j'aimerai projeter ce jeu sur un mur pour que ce mur devienne interactif.<br />
Savez quel matériel / logiciel dois-je utiliser pour projeter ce jeu et que l'interactivité fonctionne ?<br />
Merci beaucoup</div>

]]></content:encoded>
			<category domain="https://www.developpez.net/forums/f484/dotnet/langages/csharp/">C#</category>
			<dc:creator>bard123</dc:creator>
			<guid isPermaLink="true">https://www.developpez.net/forums/d2181960/dotnet/langages/csharp/csharp-unity-mur-interactif/</guid>
		</item>
		<item>
			<title><![CDATA[XmlSerializer - List d'entité]]></title>
			<link>https://www.developpez.net/forums/showthread.php?t=2179008&amp;goto=newpost</link>
			<pubDate>Wed, 03 Sep 2025 14:23:48 GMT</pubDate>
			<description>Bonjour, 
 
Soit le XML...</description>
			<content:encoded><![CDATA[<div>Bonjour,<br />
<br />
Soit le XML simplifié suivant <br />
<br />
<div class="bbcode_container">
	<div class="bbcode_description">Code:</div>
	<hr /><code class="bbcode_code"><table cellspacing="0" cellpadding="0"><tr><td valign="top" width="33"><div style="border: 1px dashed gray; padding-left: 5px; padding-right: 5px; margin-right: 5px; text-align: right; font-family: monospace">1<br />2<br />3<br />4<br />5<br />6<br />7<br />8<br />9<br />10<br />11<br />12<br />13<br />14<br />15<br />16<br />17<br />18<br /></div></td><td valign="top"><pre style="margin: 0">  &lt;WhereFilter&gt;
&nbsp;
    &lt;FilterGroup ID=<span style="color: #FF0000;">&quot;Racine&quot;</span>&gt;
    &lt;/FilterGroup&gt;
&nbsp;
    &lt;Filter ID=<span style="color: #FF0000;">&quot;MF1FILTRE1&quot;</span>&gt;
    &lt;/Filter&gt;
&nbsp;
    &lt;FilterGroup ID=<span style="color: #FF0000;">&quot;MF1GROUPE1&quot;</span>&gt;
    &lt;/FilterGroup&gt;
&nbsp;
    &lt;Filter ID=<span style="color: #FF0000;">&quot;MF1FILTRE2&quot;</span>&gt;
    &lt;/Filter&gt;
&nbsp;
    &lt;Filter ID=<span style="color: #FF0000;">&quot;MF1FILTRE3&quot;</span>&gt;
    &lt;/Filter&gt;
&nbsp;
  &lt;/WhereFilter&gt;</pre></td></tr></table></code><hr />
</div>et la class c# pour le désérialiser<br />
<br />
<div class="bbcode_container">
	<div class="bbcode_description">Code:</div>
	<hr /><code class="bbcode_code"><table cellspacing="0" cellpadding="0"><tr><td valign="top" width="26"><div style="border: 1px dashed gray; padding-left: 5px; padding-right: 5px; margin-right: 5px; text-align: right; font-family: monospace">1<br />2<br />3<br />4<br />5<br />6<br />7<br />8<br />9<br /></div></td><td valign="top"><pre style="margin: 0">    <span class="br0">&#91;</span>XmlRoot<span class="br0">&#40;</span>ElementName = <span style="color: #FF0000;">&quot;WhereFilter&quot;</span>, Namespace = <span style="color: #FF0000;">&quot;&quot;</span><span class="br0">&#41;</span><span class="br0">&#93;</span>
    <span style="color: #0000ff;">public</span> <span style="color: #0000ff;">class</span> WhereFilter
    <span class="br0">&#123;</span>
        <span class="br0">&#91;</span>XmlElement<span class="br0">&#40;</span>ElementName = <span style="color: #FF0000;">&quot;FilterGroup&quot;</span>, Namespace = <span style="color: #FF0000;">&quot;&quot;</span><span class="br0">&#41;</span><span class="br0">&#93;</span>
        <span style="color: #0000ff;">public</span> List&lt;FilterGroup&gt; FilterGroup;  
&nbsp;
        <span class="br0">&#91;</span>XmlElement<span class="br0">&#40;</span>ElementName = <span style="color: #FF0000;">&quot;Filter&quot;</span>, Namespace = <span style="color: #FF0000;">&quot;&quot;</span><span class="br0">&#41;</span><span class="br0">&#93;</span>
        <span style="color: #0000ff;">public</span> List&lt;Filter&gt; Filter;
    <span class="br0">&#125;</span></pre></td></tr></table></code><hr />
</div>il y a 2 listes d'objet. Dans le principe ça foncionnne sauf que lors de l'écriture il me met en 1er les FilterGroup puis les Filter.<br />
Comme ça<br />
<div class="bbcode_container">
	<div class="bbcode_description">Code:</div>
	<hr /><code class="bbcode_code"><table cellspacing="0" cellpadding="0"><tr><td valign="top" width="33"><div style="border: 1px dashed gray; padding-left: 5px; padding-right: 5px; margin-right: 5px; text-align: right; font-family: monospace">1<br />2<br />3<br />4<br />5<br />6<br />7<br />8<br />9<br />10<br />11<br />12<br />13<br />14<br />15<br />16<br />17<br />18<br /></div></td><td valign="top"><pre style="margin: 0">  &lt;WhereFilter&gt;
&nbsp;
    &lt;FilterGroup ID=<span style="color: #FF0000;">&quot;Racine&quot;</span>&gt;
    &lt;/FilterGroup&gt;
&nbsp;
    &lt;FilterGroup ID=<span style="color: #FF0000;">&quot;MF1GROUPE1&quot;</span>&gt;
    &lt;/FilterGroup&gt;
&nbsp;
    &lt;Filter ID=<span style="color: #FF0000;">&quot;MF1FILTRE1&quot;</span>&gt;
    &lt;/Filter&gt;
&nbsp;
    &lt;Filter ID=<span style="color: #FF0000;">&quot;MF1FILTRE2&quot;</span>&gt;
    &lt;/Filter&gt;
&nbsp;
    &lt;Filter ID=<span style="color: #FF0000;">&quot;MF1FILTRE3&quot;</span>&gt;
    &lt;/Filter&gt;
&nbsp;
  &lt;/WhereFilter&gt;</pre></td></tr></table></code><hr />
</div>Ce qui est normal.<br />
<br />
Je voudrais conserver l'ordre initial. <br />
<br />
Avez une idée de comment je pourrait déclarer ma class pour faire ça.<br />
<br />
Merci</div>

]]></content:encoded>
			<category domain="https://www.developpez.net/forums/f484/dotnet/langages/csharp/">C#</category>
			<dc:creator>Magohamoths</dc:creator>
			<guid isPermaLink="true">https://www.developpez.net/forums/d2179008/dotnet/langages/csharp/xmlserializer-list-d-entite/</guid>
		</item>
		<item>
			<title>Affichage page web via httpClient</title>
			<link>https://www.developpez.net/forums/showthread.php?t=2178947&amp;goto=newpost</link>
			<pubDate>Sun, 31 Aug 2025 23:40:12 GMT</pubDate>
			<description>Bjr à tous, comment faire...</description>
			<content:encoded><![CDATA[<div>Bjr à tous, comment faire pour afficher une page web depuis un code c# utilisant httpclient :<br />
<br />
<div class="bbcode_container">
	<div class="bbcode_description">Code:</div>
	<hr /><code class="bbcode_code"><table cellspacing="0" cellpadding="0"><tr><td valign="top" width="26"><div style="border: 1px dashed gray; padding-left: 5px; padding-right: 5px; margin-right: 5px; text-align: right; font-family: monospace">1<br />2<br />3<br />4<br />5<br />6<br />7<br />8<br />9<br /></div></td><td valign="top"><pre style="margin: 0">&nbsp;
<span style="color: #0000ff;">public</span> <span style="color: #0000ff;">static</span> <span style="color: #0000ff;">async</span> Task HttpAsync<span class="br0">&#40;</span><span class="br0">&#41;</span>
<span class="br0">&#123;</span>
    <span style="color: #0000ff;">var</span> url = <span style="color: #FF0000;">&quot;http://www.google.com&quot;</span>; 
    <span style="color: #0000ff;">using</span> <span class="br0">&#40;</span><span style="color: #0000ff;">var</span> httpClient = <span style="color: #0000ff;">new</span> HttpClient<span class="br0">&#40;</span><span class="br0">&#41;</span><span class="br0">&#41;</span>
    <span class="br0">&#123;</span>
        <span style="color: #0000ff;">var</span> content =<span style="color: #0000ff;">await</span> httpClient.GetStringAsync<span class="br0">&#40;</span>url<span class="br0">&#41;</span>;
    <span class="br0">&#125;</span>
<span class="br0">&#125;</span></pre></td></tr></table></code><hr />
</div>la &quot;var content&quot; si je débogue en utilisant le visualisateur html de visual studio m'affiche la page web correspondant à l'url, mais comment fais t-on pour afficher cette page web par programmation ?<br />
Si quelqu'un a une idée MERCI</div>

]]></content:encoded>
			<category domain="https://www.developpez.net/forums/f484/dotnet/langages/csharp/">C#</category>
			<dc:creator>xeron33</dc:creator>
			<guid isPermaLink="true">https://www.developpez.net/forums/d2178947/dotnet/langages/csharp/affichage-page-web-via-httpclient/</guid>
		</item>
		<item>
			<title>instruction await pour methodes asynchrones</title>
			<link>https://www.developpez.net/forums/showthread.php?t=2178924&amp;goto=newpost</link>
			<pubDate>Sat, 30 Aug 2025 09:30:57 GMT</pubDate>
			<description><![CDATA[Bjr à tous, j'essaie de...]]></description>
			<content:encoded><![CDATA[<div>Bjr à tous, j'essaie de comprendre le fonctionnement des méthodes asynchrones en utilisant un exemple vu sur la doc de microsoft :<br />
<br />
<a rel="nofollow" href="https://learn.microsoft.com/fr-fr/dotnet/csharp/language-reference/operators/await" target="_blank">https://learn.microsoft.com/fr-fr/do...perators/await</a><br />
<br />
<div class="bbcode_container">
	<div class="bbcode_description">Code:</div>
	<hr /><code class="bbcode_code"><table cellspacing="0" cellpadding="0"><tr><td valign="top" width="33"><div style="border: 1px dashed gray; padding-left: 5px; padding-right: 5px; margin-right: 5px; text-align: right; font-family: monospace">1<br />2<br />3<br />4<br />5<br />6<br />7<br />8<br />9<br />10<br />11<br />12<br />13<br />14<br />15<br />16<br />17<br />18<br />19<br />20<br />21<br />22<br />23<br />24<br />25<br />26<br />27<br />28<br />29<br />30<br />31<br />32<br /></div></td><td valign="top"><pre style="margin: 0">&nbsp;
<span style="color: #0000ff;">using</span> System;
<span style="color: #0000ff;">using</span> System.Collections.Generic;
<span style="color: #0000ff;">using</span> System.Linq;
<span style="color: #0000ff;">using</span> System.Net;
<span style="color: #0000ff;">using</span> System.Net.Http;
<span style="color: #0000ff;">using</span> System.Text;
<span style="color: #0000ff;">using</span> System.Threading.Tasks;
&nbsp;
<span style="color: #0000ff;">namespace</span> TestsSharpPcap
<span class="br0">&#123;</span>
    <span style="color: #0000ff;">public</span> <span style="color: #0000ff;">class</span> AwaitOperator
    <span class="br0">&#123;</span>
        <span style="color: #0000ff;">public</span> <span style="color: #0000ff;">static</span> <span style="color: #0000ff;">async</span> Task Main<span class="br0">&#40;</span><span class="br0">&#41;</span>
        <span class="br0">&#123;</span>
            Task&lt;<span style="color: #0000ff;">int</span>&gt; downloading = DownloadDocsMainPageAsync<span class="br0">&#40;</span><span class="br0">&#41;</span>;
            Console.WriteLine<span class="br0">&#40;</span><span style="color: #FF0000;">$</span><span style="color: #FF0000;">&quot;<span style="color: black;"><span class="br0">&#123;</span>nameof<span class="br0">&#40;</span>Main<span class="br0">&#41;</span><span class="br0">&#125;</span></span>: Launched downloading.&quot;</span><span class="br0">&#41;</span>;
&nbsp;
            <span style="color: #0000ff;">int</span> bytesLoaded = <span style="color: #0000ff;">await</span> downloading;
            Console.WriteLine<span class="br0">&#40;</span><span style="color: #FF0000;">$</span><span style="color: #FF0000;">&quot;<span style="color: black;"><span class="br0">&#123;</span>nameof<span class="br0">&#40;</span>Main<span class="br0">&#41;</span><span class="br0">&#125;</span></span>: Downloaded <span style="color: black;"><span class="br0">&#123;</span>bytesLoaded<span class="br0">&#125;</span></span> bytes.&quot;</span><span class="br0">&#41;</span>;
        <span class="br0">&#125;</span>
&nbsp;
        <span style="color: #0000ff;">private</span> <span style="color: #0000ff;">static</span> <span style="color: #0000ff;">async</span> Task&lt;<span style="color: #0000ff;">int</span>&gt; DownloadDocsMainPageAsync<span class="br0">&#40;</span><span class="br0">&#41;</span>
        <span class="br0">&#123;</span>
            Console.WriteLine<span class="br0">&#40;</span><span style="color: #FF0000;">$</span><span style="color: #FF0000;">&quot;<span style="color: black;"><span class="br0">&#123;</span>nameof<span class="br0">&#40;</span>DownloadDocsMainPageAsync<span class="br0">&#41;</span><span class="br0">&#125;</span></span>: About to start downloading.&quot;</span><span class="br0">&#41;</span>;
            <span style="color: #0000ff;">var</span> client = <span style="color: #0000ff;">new</span> HttpClient<span class="br0">&#40;</span><span class="br0">&#41;</span>;
            <span style="color: #0000ff;">byte</span><span class="br0">&#91;</span><span class="br0">&#93;</span> content = <span style="color: #0000ff;">await</span> client.GetByteArrayAsync<span class="br0">&#40;</span><span style="color: #FF0000;">&quot;http://www.google.com/&quot;</span><span class="br0">&#41;</span>;
            Console.WriteLine<span class="br0">&#40;</span><span style="color: #FF0000;">$</span><span style="color: #FF0000;">&quot;<span style="color: black;"><span class="br0">&#123;</span>nameof<span class="br0">&#40;</span>DownloadDocsMainPageAsync<span class="br0">&#41;</span><span class="br0">&#125;</span></span>: Finished downloading.&quot;</span><span class="br0">&#41;</span>;
            <span style="color: #0000ff;">return</span> content.Length;
        <span class="br0">&#125;</span>
    <span class="br0">&#125;</span>
<span class="br0">&#125;</span></pre></td></tr></table></code><hr />
</div>Le problème que j'ai est que quand la tache &quot;DownloadDocsMainPageAsync&quot; est lancée et qu'elle arrive à l'opérateur await elle s'exécute et termine le programme sans exécuter le reste du code :<br />
<div class="bbcode_container">
	<div class="bbcode_description">Code:</div>
	<hr /><code class="bbcode_code"><table cellspacing="0" cellpadding="0"><tr><td valign="top" width="26"><div style="border: 1px dashed gray; padding-left: 5px; padding-right: 5px; margin-right: 5px; text-align: right; font-family: monospace">1<br />2<br />3<br /></div></td><td valign="top"><pre style="margin: 0">&nbsp;
Console.WriteLine<span class="br0">&#40;</span><span style="color: #FF0000;">$</span><span style="color: #FF0000;">&quot;<span style="color: black;"><span class="br0">&#123;</span>nameof<span class="br0">&#40;</span>DownloadDocsMainPageAsync<span class="br0">&#41;</span><span class="br0">&#125;</span></span>: Finished downloading.&quot;</span><span class="br0">&#41;</span>;
<span style="color: #0000ff;">return</span> content.Length;</pre></td></tr></table></code><hr />
</div>ce qui donne comme résultat :<br />
<br />
DownloadDocsMainPageAsync: About to start downloading.<br />
Main: Launched downloading.<br />
<br />
au lieu comme le stipule le cours :<br />
<br />
// Output similar to:<br />
// DownloadDocsMainPageAsync: About to start downloading.<br />
// Main: Launched downloading.<br />
// DownloadDocsMainPageAsync: Finished downloading.<br />
// Main: Downloaded 27700 bytes.<br />
<br />
Ils précisent : &quot;L’opérande d’une expression await doit fournir une notification lorsqu’une tâche se termine. En général, un délégué est appelé lorsque la tâche se termine, que ce soit une réussite ou un échec. La section await de la spécification du langage C# fournit les détails sur la façon dont ces notifications sont implémentées.&quot;<br />
mais je n'arrive pas à voir d'exemples précis, si quelqu'un a une idée MERCI</div>

]]></content:encoded>
			<category domain="https://www.developpez.net/forums/f484/dotnet/langages/csharp/">C#</category>
			<dc:creator>xeron33</dc:creator>
			<guid isPermaLink="true">https://www.developpez.net/forums/d2178924/dotnet/langages/csharp/instruction-await-methodes-asynchrones/</guid>
		</item>
		<item>
			<title><![CDATA[Comment compiler libiec61850 pour pouvoir l'utiliser comme DLL en C# ?]]></title>
			<link>https://www.developpez.net/forums/showthread.php?t=2178139&amp;goto=newpost</link>
			<pubDate>Fri, 18 Jul 2025 19:10:57 GMT</pubDate>
			<description>Bonjour, 
Je ne suis pas sûr...</description>
			<content:encoded><![CDATA[<div>Bonjour,<br />
Je ne suis pas sûr d'être dans le bon forum, mais bon voilà, ma question concerne au final le C#.<br />
(Changez la rubrique du post si vous pensez que cela doit être fait).<br />
<br />
Voici l'exposé de mon problème. <b>Je voudrais faire un projet en C# qui tourne autour du protocole industriel iec61850.</b><br />
Mais j'ai besoin d'une librairie open-source que j'ai beaucoup de mal à compiler.<br />
<br />
Cette librairie, c'est libiec61850 de mz-automation qui a été écrite en C : la voici :<br />
<a rel="nofollow" href="https://github.com/mz-automation/libiec61850" target="_blank">https://github.com/mz-automation/libiec61850</a><br />
On apprend dans l'intro qu'il est possible de la compiler en .DLL pour C#.<br />
Et mz-automation fournit aussi un wrapper pour .Net qui permet d'utiliser facilement toutes les fonctions de la librairie en C#.<br />
<br />
Cette librairie est d'ailleurs utilisée (sous forme de DLL aussi, mais ancienne et incomplète) dans le magnifique logiciel open-source <b>IED-Explorer</b> (hébergé avec des exécutables sur SourceForge) : programme qui marche très bien au demeurant.<br />
<br />
J'ai pris mon courage à deux mains, et j'ai tenté de compiler libiec61850.<br />
(Autre remarque, même si je vais utiliser cette DLL sous Windows, j'ai une intuition qui me dit que ce sera plus facile de produire cette DLL sous Linux).<br />
<br />
<b><u>Voici mon mode opératoire (sous Ubuntu), mais je n'arrive pas à atteindre l'objectif final.</u></b><br />
<br />
<b>1)</b> d'abord je me suis assuré d'avoir un compilateur cross-platform, j'ai fait :<br />
sudo apt-get install gcc-mingw-w64<br />
<br />
<b>2)</b> ensuite, j'ai vérifié que j'ai un cmake récent :<br />
cmake --version<br />
3.28.3<br />
<br />
<b>3)</b> J'ai téléchargé le SDK de WinPcap, càd WpdPack_4_1_2.zip dont j'extrais le contenu Lib et Include et je les place dans les sources :<br />
Third_Party/WinPcap/<br />
 <br />
<b>4)</b> je crée alors un dossier build dans le dossier racine de la librairie : ./libiec61850/build<br />
je vais dans ce dossier build et je fais : CMake avec les deux points. Ces deux points vont chercher en réalité CMakeLists.txt un niveau plus haut :<br />
cmake ..<br />
<br />
<b>5)</b> cela semble construire correctement un fichier make, dirait-on.<br />
<br />
<b>6)</b> ensuite je me place à nouveau dans le dossier ./libiec61850/build, et de là, dans mon terminal, je fais :<br />
make TARGET=WIN32<br />
<br />
<b>7)</b> là, j'ai un magnifique défilé de compilation, apparemment sans aucun message d'erreur (cool), et cela semble<br />
me construire :<br />
- un fichier compilé nommé <b>libiec61850.so</b> de 1,1 Mo.<br />
- un fichier compilé nommé <b>libiec61850.so.1.6.0</b> de 1,1 Mo.<br />
- un fichier compilé nommé <b>libiec61850.a</b> de 1,8 Mo.<br />
<br />
Mais aucune DLL ?<br />
<br />
J'ai cherché partout des exemples de compilation, mais je ne sais toujours pas comment compiler en DLL à mon stade de connaissance ?<br />
Quelqu'un peut me dire quelle commande je dois insérer ou modifier pour obtenir cette fameuse librairie au format libiec61850.dll ?<br />
<br />
Un grand merci d'avance pour votre aide. :calim2:</div>

]]></content:encoded>
			<category domain="https://www.developpez.net/forums/f484/dotnet/langages/csharp/">C#</category>
			<dc:creator>calogerogigante</dc:creator>
			<guid isPermaLink="true">https://www.developpez.net/forums/d2178139/dotnet/langages/csharp/compiler-libiec61850-pouvoir-l-utiliser-dll-csharp/</guid>
		</item>
		<item>
			<title>Coder JavaScript depuis C#</title>
			<link>https://www.developpez.net/forums/showthread.php?t=2178102&amp;goto=newpost</link>
			<pubDate>Thu, 17 Jul 2025 09:00:50 GMT</pubDate>
			<description>Bonjour à tous, 
Je...</description>
			<content:encoded><![CDATA[<div>Bonjour à tous,<br />
Je souhaiterais pouvoir coder du javascript depuis une appiication console c# Framework .net 4.8.<br />
J'ai essayé d'ajouter à mon code :<br />
<div class="bbcode_container">
	<div class="bbcode_description">Code:</div>
	<hr /><code class="bbcode_code"><table cellspacing="0" cellpadding="0"><tr><td valign="top" width="26"><div style="border: 1px dashed gray; padding-left: 5px; padding-right: 5px; margin-right: 5px; text-align: right; font-family: monospace">1<br />2<br /></div></td><td valign="top"><pre style="margin: 0">&nbsp;
<span style="color: #0000ff;">using</span> System.Runtime.InteropServices;</pre></td></tr></table></code><hr />
</div>Quand j'essaie d'utiliser Interop :<br />
<div class="bbcode_container">
	<div class="bbcode_description">Code:</div>
	<hr /><code class="bbcode_code"><table cellspacing="0" cellpadding="0"><tr><td valign="top" width="26"><div style="border: 1px dashed gray; padding-left: 5px; padding-right: 5px; margin-right: 5px; text-align: right; font-family: monospace">1<br />2<br /></div></td><td valign="top"><pre style="margin: 0">&nbsp;
Interop s;</pre></td></tr></table></code><hr />
</div>J'ai l'erreur : Erreur de compilateur CS0122<br />
<br />
<br />
&quot;membre&quot; est inaccessible en raison de son niveau de protection<br />
<br />
 Je n'arrive pas à trouver une bonne solution, si quelqu'un a une idée. MERCI</div>

]]></content:encoded>
			<category domain="https://www.developpez.net/forums/f484/dotnet/langages/csharp/">C#</category>
			<dc:creator>xeron33</dc:creator>
			<guid isPermaLink="true">https://www.developpez.net/forums/d2178102/dotnet/langages/csharp/coder-javascript-csharp/</guid>
		</item>
		<item>
			<title>Comme le fait Inspect.</title>
			<link>https://www.developpez.net/forums/showthread.php?t=2178046&amp;goto=newpost</link>
			<pubDate>Mon, 14 Jul 2025 06:55:10 GMT</pubDate>
			<description>Bonjour à tous, 
 
Je suis en...</description>
			<content:encoded><![CDATA[<div>Bonjour à tous,<br />
<br />
Je suis en cours de développement d'une application me permettant d'utiliser une interface (DAW-Midi) vers une application (DASLIGHT) écrite en QT5 afin de pouvoir faciliter la manipulation de paramétrage sur cette application.<br />
<br />
La plupart des boutons de cette application sont accessibles par une commande en utilisant le protocole OSC, mais malheureusement, il me manque la possibilité d'accéder à certains éléments (Edit). <br />
<br />
J'ai demandé au programmateur de cette application s'il pouvait ouvrir ces éléments, mais il m'a répondu que ce n'était pas dans sa priorité.<br />
<br />
J'arrive à envoyer un clique par un sendmessage vers cette application, mais je n'ai pas toutes les informations (position x/y) pour pouvoir l'automatiser.<br />
<br />
Si j'utilise l'application &quot;inspect.exe&quot; elle me donne toute une arborescence des objets de cette l'application avec les informations qu'il me faudrait.<br />
<br />
Savez-vous comment il est possible d'obtenir la liste de ces objets et leurs paramètres à partir du handle de l'application comme le fait l'application &quot;inspect.exe&quot; ?<br />
<br />
Merci beaucoup pour votre aide.<br />
<br />
À bientôt.<br />
<br />
François.</div>

]]></content:encoded>
			<category domain="https://www.developpez.net/forums/f484/dotnet/langages/csharp/">C#</category>
			<dc:creator>wsixpo82</dc:creator>
			<guid isPermaLink="true">https://www.developpez.net/forums/d2178046/dotnet/langages/csharp/inspect/</guid>
		</item>
		<item>
			<title>Rechercher un nombre</title>
			<link>https://www.developpez.net/forums/showthread.php?t=2177255&amp;goto=newpost</link>
			<pubDate>Sun, 01 Jun 2025 04:39:22 GMT</pubDate>
			<description>Bonjour tout le monde , 
 
Je...</description>
			<content:encoded><![CDATA[<div>Bonjour tout le monde ,<br />
<br />
Je suis débutant et je développe un petit programme pour rechercher dans un texte ou dans une liste un mot ou un nombre.<br />
Voici une partie de ce programme qui demande à l'utilisateur d'entrer seulement, une chaine non vide et ne contenant que des caractères digitaux :<br />
<br />
<div class="bbcode_container">
	<div class="bbcode_description">Code:</div>
	<hr /><code class="bbcode_code"><table cellspacing="0" cellpadding="0"><tr><td valign="top" width="33"><div style="border: 1px dashed gray; padding-left: 5px; padding-right: 5px; margin-right: 5px; text-align: right; font-family: monospace">1<br />2<br />3<br />4<br />5<br />6<br />7<br />8<br />9<br />10<br />11<br />12<br />13<br />14<br />15<br />16<br />17<br />18<br />19<br />20<br />21<br />22<br />23<br />24<br /></div></td><td valign="top"><pre style="margin: 0">            Console.WriteLine<span class="br0">&#40;</span><span style="color: #FF0000;">&quot;Entrez un nombre &agrave; rechercher  : &quot;</span><span class="br0">&#41;</span>;
            <span style="color: #0000ff;">string</span> Str = Console.ReadLine<span class="br0">&#40;</span><span class="br0">&#41;</span>;
            <span style="color: #0000ff;">try</span>
            <span class="br0">&#123;</span>
                <span style="color: #0000ff;">while</span> <span class="br0">&#40;</span>Str.Length == <span style="color: #cc66cc;">0</span><span class="br0">&#41;</span>
                <span class="br0">&#123;</span>
                    Console.WriteLine<span class="br0">&#40;</span><span style="color: #FF0000;">&quot;Entrez, seulement,  une chaine non vide et ne contenant que des carateres digitaux :&quot;</span><span class="br0">&#41;</span>;
                    Str = Console.ReadLine<span class="br0">&#40;</span><span class="br0">&#41;</span>;
                <span class="br0">&#125;</span>
                <span style="color: #0000ff;">for</span> <span class="br0">&#40;</span><span style="color: #0000ff;">int</span> i = <span style="color: #cc66cc;">0</span>; i &lt; Str.Length; i++<span class="br0">&#41;</span>
                <span class="br0">&#123;</span>
                    <span style="color: #0000ff;">while</span> <span class="br0">&#40;</span>Str.Length == <span style="color: #cc66cc;">0</span> || <span style="color: #0000ff;">char</span>.IsDigit<span class="br0">&#40;</span>Str, i<span class="br0">&#41;</span> <span style="color: #0000ff;">is</span> <span style="color: #0000ff;">false</span><span class="br0">&#41;</span>
                    <span class="br0">&#123;</span>
                        Console.WriteLine<span class="br0">&#40;</span><span style="color: #FF0000;">&quot;Entrez, seulement,  une chaine non vide et ne contenant que des carateres digitaux :&quot;</span><span class="br0">&#41;</span>;                    
                        Str = Console.ReadLine<span class="br0">&#40;</span><span class="br0">&#41;</span>;
                    <span class="br0">&#125;</span>
                <span class="br0">&#125;</span>
                Console.WriteLine<span class="br0">&#40;</span><span style="color: #FF0000;">&quot;***************&quot;</span><span class="br0">&#41;</span>;
                Console.WriteLine<span class="br0">&#40;</span>Str<span class="br0">&#41;</span>;
            <span class="br0">&#125;</span>
            <span style="color: #0000ff;">catch</span><span class="br0">&#40;</span>Exception Hyt<span class="br0">&#41;</span>
            <span class="br0">&#123;</span>
                Console.WriteLine<span class="br0">&#40;</span><span style="color: #FF0000;">&quot;Erreur &quot;</span> + <span style="color: #FF0000;">&quot;<span style="color: #800000;">\n</span>&quot;</span> + Hyt<span class="br0">&#41;</span>;
            <span class="br0">&#125;</span></pre></td></tr></table></code><hr />
</div><br />
et je voudrais votre avis ,SVP, car il me parait un peu fragile<br />
Merci à vous tous</div>

]]></content:encoded>
			<category domain="https://www.developpez.net/forums/f484/dotnet/langages/csharp/">C#</category>
			<dc:creator>Saidtoufik</dc:creator>
			<guid isPermaLink="true">https://www.developpez.net/forums/d2177255/dotnet/langages/csharp/rechercher-nombre/</guid>
		</item>
		<item>
			<title><![CDATA[Récupérer des données d'une propriété de navigation qui est une collection]]></title>
			<link>https://www.developpez.net/forums/showthread.php?t=2177187&amp;goto=newpost</link>
			<pubDate>Wed, 28 May 2025 10:13:42 GMT</pubDate>
			<description><![CDATA[Bonjour,  
 
J'ai créé une...]]></description>
			<content:encoded><![CDATA[<div>Bonjour, <br />
<br />
J'ai créé une application de gestion de configurations Gestion_Configurations. La classe VM_Configuration comporte deux propriétés Postes_travail_config et Logiciels qui sont deux collections.<br />
<br />
Au niveau du Controller ConfigurationController je ne parviens pas à récupérer les contenus des propriétés sonProcess, sonOs, sonEcran, pour chaque poste de travail récupéré pour une configuration donnée  (voir imp ecran ci-jointe).<br />
<br />
Merci beaucoup de me dire ce que j'ai besoin de rajouter dans les Include des méthodes ListerConfigurations et AfficherConfigurations pour récupérer les contenus de ces propriétés à l'écran.<br />
<br />
<br />
Merci infiniment de votre aide!<br />
<br />
Bien cordialement.<br />
<br />
new_wave<br />
<br />
<br />
ps: j'ai bien mis tous les using dans mon code mais les ai enlvés ici pour faciliter la lisibilité<br />
<br />
<div class="bbcode_container">
	<div class="bbcode_description">Code:</div>
	<hr /><code class="bbcode_code"><table cellspacing="0" cellpadding="0"><tr><td valign="top" width="33"><div style="border: 1px dashed gray; padding-left: 5px; padding-right: 5px; margin-right: 5px; text-align: right; font-family: monospace">1<br />2<br />3<br />4<br />5<br />6<br />7<br />8<br />9<br />10<br />11<br />12<br />13<br />14<br />15<br />16<br />17<br />18<br />19<br />20<br />21<br />22<br />23<br />24<br />25<br />26<br />27<br />28<br /></div></td><td valign="top"><pre style="margin: 0">&nbsp;
&nbsp;
&nbsp;
<span style="color: #0000ff;">namespace</span> Gestion_Configurations.Models
    <span class="br0">&#123;</span>
        <span class="br0">&#91;</span>Table<span class="br0">&#40;</span><span style="color: #FF0000;">&quot;Configuration&quot;</span><span class="br0">&#41;</span><span class="br0">&#93;</span>
        <span style="color: #0000ff;">public</span> <span style="color: #0000ff;">class</span> VM_Configuration
        <span class="br0">&#123;</span>
            <span class="br0">&#91;</span>Key<span class="br0">&#93;</span>
            <span style="color: #0000ff;">public</span> <span style="color: #0000ff;">int</span> Id_config <span class="br0">&#123;</span> <span style="color: #0000ff;">get</span>; <span style="color: #0000ff;">set</span>; <span class="br0">&#125;</span>
&nbsp;
            <span style="color: #0000ff;">public</span> <span style="color: #0000ff;">string</span> Nom_config <span class="br0">&#123;</span> <span style="color: #0000ff;">get</span>; <span style="color: #0000ff;">set</span>; <span class="br0">&#125;</span>
&nbsp;
            <span class="br0">&#91;</span>Column<span class="br0">&#40;</span><span style="color: #FF0000;">&quot;Id_service&quot;</span><span class="br0">&#41;</span><span class="br0">&#93;</span>
            <span class="br0">&#91;</span>ForeignKey<span class="br0">&#40;</span>nameof<span class="br0">&#40;</span>sonService<span class="br0">&#41;</span><span class="br0">&#41;</span><span class="br0">&#93;</span>
            <span style="color: #0000ff;">public</span> <span style="color: #0000ff;">int</span> Id_service <span class="br0">&#123;</span> <span style="color: #0000ff;">get</span>; <span style="color: #0000ff;">set</span>; <span class="br0">&#125;</span>
            <span style="color: #0000ff;">public</span> VM_Service sonService <span class="br0">&#123;</span> <span style="color: #0000ff;">get</span>; <span style="color: #0000ff;">set</span>; <span class="br0">&#125;</span>
&nbsp;
            <span class="br0">&#91;</span>Column<span class="br0">&#40;</span><span style="color: #FF0000;">&quot;Id_script&quot;</span><span class="br0">&#41;</span><span class="br0">&#93;</span>
            <span class="br0">&#91;</span>ForeignKey<span class="br0">&#40;</span>nameof<span class="br0">&#40;</span>sonScript<span class="br0">&#41;</span><span class="br0">&#41;</span><span class="br0">&#93;</span>
            <span style="color: #0000ff;">public</span> <span style="color: #0000ff;">int</span> Id_script <span class="br0">&#123;</span> <span style="color: #0000ff;">get</span>; <span style="color: #0000ff;">set</span>; <span class="br0">&#125;</span>
            <span style="color: #0000ff;">public</span> VM_Script sonScript <span class="br0">&#123;</span> <span style="color: #0000ff;">get</span>; <span style="color: #0000ff;">set</span>; <span class="br0">&#125;</span>
&nbsp;
&nbsp;
            <span style="color: #0000ff;">public</span> List&lt;VM_Poste_travail&gt; Postes_travail_config <span class="br0">&#123;</span> <span style="color: #0000ff;">get</span>; <span style="color: #0000ff;">set</span>; <span class="br0">&#125;</span>
            <span style="color: #0000ff;">public</span> List&lt;VM_Logiciel&gt; Logiciels <span class="br0">&#123;</span> <span style="color: #0000ff;">get</span>; <span style="color: #0000ff;">set</span>; <span class="br0">&#125;</span>
        <span class="br0">&#125;</span>
    <span class="br0">&#125;</span></pre></td></tr></table></code><hr />
</div><div class="bbcode_container">
	<div class="bbcode_description">Code:</div>
	<hr /><code class="bbcode_code"><table cellspacing="0" cellpadding="0"><tr><td valign="top" width="33"><div style="border: 1px dashed gray; padding-left: 5px; padding-right: 5px; margin-right: 5px; text-align: right; font-family: monospace">1<br />2<br />3<br />4<br />5<br />6<br />7<br />8<br />9<br />10<br />11<br />12<br />13<br />14<br />15<br />16<br />17<br />18<br />19<br />20<br />21<br />22<br />23<br />24<br />25<br />26<br />27<br />28<br />29<br />30<br />31<br />32<br />33<br />34<br />35<br />36<br />37<br />38<br /></div></td><td valign="top"><pre style="margin: 0">&nbsp;
&nbsp;
<span style="color: #0000ff;">namespace</span> Gestion_Configurations.Models
    <span class="br0">&#123;</span>
&nbsp;
        <span style="color: #0000ff;">public</span> <span style="color: #0000ff;">class</span> VM_Poste_travail
        <span class="br0">&#123;</span>
            <span class="br0">&#91;</span>Key<span class="br0">&#93;</span>
            <span style="color: #0000ff;">public</span> <span style="color: #0000ff;">int</span> Id_poste_travail <span class="br0">&#123;</span> <span style="color: #0000ff;">get</span>; <span style="color: #0000ff;">set</span>; <span class="br0">&#125;</span>
            <span style="color: #0000ff;">public</span> <span style="color: #0000ff;">int</span> Capacite_RAM <span class="br0">&#123;</span> <span style="color: #0000ff;">get</span>; <span style="color: #0000ff;">set</span>; <span class="br0">&#125;</span>
            <span style="color: #0000ff;">public</span> <span style="color: #0000ff;">string</span> Unite_RAM <span class="br0">&#123;</span> <span style="color: #0000ff;">get</span>; <span style="color: #0000ff;">set</span>; <span class="br0">&#125;</span>
            <span style="color: #0000ff;">public</span> <span style="color: #0000ff;">int</span> Capacite_Disque <span class="br0">&#123;</span> <span style="color: #0000ff;">get</span>; <span style="color: #0000ff;">set</span>; <span class="br0">&#125;</span>
            <span style="color: #0000ff;">public</span> <span style="color: #0000ff;">string</span> Unite_capacite_disque <span class="br0">&#123;</span> <span style="color: #0000ff;">get</span>; <span style="color: #0000ff;">set</span>; <span class="br0">&#125;</span>
&nbsp;
&nbsp;
&nbsp;
            <span class="br0">&#91;</span>Column<span class="br0">&#40;</span><span style="color: #FF0000;">&quot;Id_processeur&quot;</span><span class="br0">&#41;</span><span class="br0">&#93;</span>
            <span class="br0">&#91;</span>ForeignKey<span class="br0">&#40;</span>nameof<span class="br0">&#40;</span>sonProcess<span class="br0">&#41;</span><span class="br0">&#41;</span><span class="br0">&#93;</span>
            <span style="color: #0000ff;">public</span> <span style="color: #0000ff;">int</span> Id_processeur <span class="br0">&#123;</span> <span style="color: #0000ff;">get</span>; <span style="color: #0000ff;">set</span>; <span class="br0">&#125;</span>
            <span style="color: #0000ff;">public</span> VM_Processeur sonProcess <span class="br0">&#123;</span> <span style="color: #0000ff;">get</span>; <span style="color: #0000ff;">set</span>; <span class="br0">&#125;</span>
&nbsp;
            <span class="br0">&#91;</span>Column<span class="br0">&#40;</span><span style="color: #FF0000;">&quot;Id_OS&quot;</span><span class="br0">&#41;</span><span class="br0">&#93;</span>
            <span class="br0">&#91;</span>ForeignKey<span class="br0">&#40;</span>nameof<span class="br0">&#40;</span>sonOS<span class="br0">&#41;</span><span class="br0">&#41;</span><span class="br0">&#93;</span>
            <span style="color: #0000ff;">public</span> <span style="color: #0000ff;">int</span> Id_OS <span class="br0">&#123;</span> <span style="color: #0000ff;">get</span>; <span style="color: #0000ff;">set</span>; <span class="br0">&#125;</span>
            <span style="color: #0000ff;">public</span> VM_Syst_Exploit sonOS <span class="br0">&#123;</span> <span style="color: #0000ff;">get</span>; <span style="color: #0000ff;">set</span>; <span class="br0">&#125;</span>
&nbsp;
            <span class="br0">&#91;</span>Column<span class="br0">&#40;</span><span style="color: #FF0000;">&quot;Id_ecran&quot;</span><span class="br0">&#41;</span><span class="br0">&#93;</span>
            <span class="br0">&#91;</span>ForeignKey<span class="br0">&#40;</span>nameof<span class="br0">&#40;</span>sonEcran<span class="br0">&#41;</span><span class="br0">&#41;</span><span class="br0">&#93;</span>
            <span style="color: #0000ff;">public</span> <span style="color: #0000ff;">int</span> Id_ecran <span class="br0">&#123;</span> <span style="color: #0000ff;">get</span>; <span style="color: #0000ff;">set</span>; <span class="br0">&#125;</span>
            <span style="color: #0000ff;">public</span> VM_Ecran sonEcran <span class="br0">&#123;</span> <span style="color: #0000ff;">get</span>; <span style="color: #0000ff;">set</span>; <span class="br0">&#125;</span>
&nbsp;
            <span class="br0">&#91;</span>Column<span class="br0">&#40;</span><span style="color: #FF0000;">&quot;Id_config&quot;</span><span class="br0">&#41;</span><span class="br0">&#93;</span>
            <span class="br0">&#91;</span>ForeignKey<span class="br0">&#40;</span>nameof<span class="br0">&#40;</span>saConfig<span class="br0">&#41;</span><span class="br0">&#41;</span><span class="br0">&#93;</span>
            <span style="color: #0000ff;">public</span> <span style="color: #0000ff;">int</span> Id_config <span class="br0">&#123;</span> <span style="color: #0000ff;">get</span>; <span style="color: #0000ff;">set</span>; <span class="br0">&#125;</span>
            <span style="color: #0000ff;">public</span> VM_Configuration saConfig <span class="br0">&#123;</span> <span style="color: #0000ff;">get</span>; <span style="color: #0000ff;">set</span>; <span class="br0">&#125;</span>
&nbsp;
        <span class="br0">&#125;</span>
    <span class="br0">&#125;</span></pre></td></tr></table></code><hr />
</div><div class="bbcode_container">
	<div class="bbcode_description">Code:</div>
	<hr /><code class="bbcode_code"><table cellspacing="0" cellpadding="0"><tr><td valign="top" width="33"><div style="border: 1px dashed gray; padding-left: 5px; padding-right: 5px; margin-right: 5px; text-align: right; font-family: monospace">1<br />2<br />3<br />4<br />5<br />6<br />7<br />8<br />9<br />10<br />11<br />12<br />13<br />14<br />15<br />16<br />17<br />18<br /></div></td><td valign="top"><pre style="margin: 0">&nbsp;
&nbsp;
<span style="color: #0000ff;">namespace</span> Gestion_Configurations.Models
<span class="br0">&#123;</span>
     <span class="br0">&#91;</span>Table<span class="br0">&#40;</span><span style="color: #FF0000;">&quot;Logiciel&quot;</span><span class="br0">&#41;</span><span class="br0">&#93;</span>
        <span style="color: #0000ff;">public</span> <span style="color: #0000ff;">class</span> VM_Logiciel
        <span class="br0">&#123;</span>
            <span class="br0">&#91;</span>Key<span class="br0">&#93;</span>
&nbsp;
            <span style="color: #0000ff;">public</span> <span style="color: #0000ff;">int</span> Id_logiciel <span class="br0">&#123;</span> <span style="color: #0000ff;">get</span>; <span style="color: #0000ff;">set</span>; <span class="br0">&#125;</span>
&nbsp;
            <span style="color: #0000ff;">public</span> <span style="color: #0000ff;">string</span> Nom_logiciel <span class="br0">&#123;</span> <span style="color: #0000ff;">get</span>; <span style="color: #0000ff;">set</span>; <span class="br0">&#125;</span>
&nbsp;
            <span style="color: #0000ff;">public</span> <span style="color: #0000ff;">string</span> Version_logiciel <span class="br0">&#123;</span> <span style="color: #0000ff;">get</span>; <span style="color: #0000ff;">set</span>; <span class="br0">&#125;</span>
&nbsp;
            <span style="color: #0000ff;">public</span> List&lt;VM_Configuration&gt; Liste_configs <span class="br0">&#123;</span> <span style="color: #0000ff;">get</span>; <span style="color: #0000ff;">set</span>; <span class="br0">&#125;</span>
        <span class="br0">&#125;</span>
<span class="br0">&#125;</span></pre></td></tr></table></code><hr />
</div><div class="bbcode_container">
	<div class="bbcode_description">Code:</div>
	<hr /><code class="bbcode_code"><table cellspacing="0" cellpadding="0"><tr><td valign="top" width="33"><div style="border: 1px dashed gray; padding-left: 5px; padding-right: 5px; margin-right: 5px; text-align: right; font-family: monospace">1<br />2<br />3<br />4<br />5<br />6<br />7<br />8<br />9<br />10<br />11<br />12<br />13<br />14<br />15<br />16<br />17<br />18<br />19<br />20<br />21<br />22<br />23<br />24<br />25<br />26<br />27<br />28<br />29<br />30<br />31<br />32<br />33<br />34<br />35<br />36<br />37<br />38<br />39<br />40<br />41<br />42<br />43<br />44<br />45<br />46<br />47<br />48<br />49<br />50<br />51<br />52<br />53<br />54<br />55<br />56<br />57<br />58<br />59<br />60<br />61<br />62<br />63<br />64<br />65<br />66<br />67<br />68<br />69<br />70<br />71<br />72<br />73<br />74<br />75<br />76<br />77<br />78<br />79<br />80<br />81<br />82<br />83<br />84<br />85<br />86<br />87<br />88<br />89<br />90<br />91<br />92<br />93<br />94<br />95<br />96<br />97<br />98<br /></div></td><td valign="top"><pre style="margin: 0">&nbsp;
&nbsp;
<span style="color: #0000ff;">namespace</span> Gestion_Configurations.Controllers
<span class="br0">&#123;</span>
&nbsp;
        <span style="color: #0000ff;">public</span> <span style="color: #0000ff;">class</span> ConfigurationController : Controller
        <span class="br0">&#123;</span>
            E_gestconfigs_Context context = <span style="color: #0000ff;">new</span> E_gestconfigs_Context<span class="br0">&#40;</span><span class="br0">&#41;</span>;
        <span style="color: #808080;">// GET: Configuration</span>
        <span style="color: #808080;">/// &lt;summary&gt;</span>
        <span style="color: #808080;">/// Affichage de toutes les configurations</span>
        <span style="color: #808080;">/// &lt;/summary&gt;</span>
        <span style="color: #808080;">/// &lt;returns&gt;&lt;/returns&gt;</span>
        <span style="color: #808080;">/// </span>
        <span style="color: #808080;">// GET: Configuration</span>
&nbsp;
&nbsp;
        <span class="br0">&#91;</span>HttpGet<span class="br0">&#93;</span>
            <span style="color: #0000ff;">public</span> ActionResult ListerConfigurations<span class="br0">&#40;</span><span class="br0">&#41;</span>
            <span class="br0">&#123;</span>
&nbsp;
&nbsp;
&nbsp;
                <span style="color: #0000ff;">try</span>
                <span class="br0">&#123;</span>
&nbsp;
&nbsp;
                IEnumerable&lt;VM_Configuration&gt; liste_configurations_pt_logiciels = <span style="color: #0000ff;">new</span> List&lt;VM_Configuration&gt;<span class="br0">&#40;</span><span class="br0">&#41;</span>;
                liste_configurations_pt_logiciels = context.Configurations.Include<span class="br0">&#40;</span>config=&gt;config.Postes_travail_config<span class="br0">&#41;</span>.Include<span class="br0">&#40;</span>config=&gt;config.Logiciels<span class="br0">&#41;</span>.Include<span class="br0">&#40;</span>config =&gt; config.sonScript<span class="br0">&#41;</span>.Include<span class="br0">&#40;</span>config =&gt; config.sonService<span class="br0">&#41;</span>.ToList<span class="br0">&#40;</span><span class="br0">&#41;</span>;
&nbsp;
                <span style="color: #0000ff;">if</span> <span class="br0">&#40;</span>liste_configurations_pt_logiciels != <span style="color: #0000ff;">null</span><span class="br0">&#41;</span>
                    <span class="br0">&#123;</span>
&nbsp;
                         <span style="color: #0000ff;">return</span> View<span class="br0">&#40;</span><span style="color: #FF0000;">&quot;ListerConfigurations&quot;</span>, liste_configurations_pt_logiciels<span class="br0">&#41;</span>;
&nbsp;
&nbsp;
                    <span class="br0">&#125;</span><span style="color: #808080;">//fin de if</span>
&nbsp;
                    <span style="color: #0000ff;">else</span>
                    <span class="br0">&#123;</span>
                        <span style="color: #0000ff;">return</span> HttpNotFound<span class="br0">&#40;</span><span class="br0">&#41;</span>;
                    <span class="br0">&#125;</span><span style="color: #808080;">//fin de else</span>
&nbsp;
                <span class="br0">&#125;</span><span style="color: #808080;">//fin de try</span>
&nbsp;
                <span style="color: #0000ff;">catch</span> <span class="br0">&#40;</span>Exception ex<span class="br0">&#41;</span>
                <span class="br0">&#123;</span>
&nbsp;
                    Console.WriteLine<span class="br0">&#40;</span><span style="color: #FF0000;">&quot;une erreur s'est produite &agrave; l'affichage des configurations&quot;</span> + ex.Message<span class="br0">&#41;</span>;
                    <span style="color: #0000ff;">return</span> HttpNotFound<span class="br0">&#40;</span><span class="br0">&#41;</span>;
                <span class="br0">&#125;</span><span style="color: #808080;">//fin de catch</span>
&nbsp;
            <span class="br0">&#125;</span><span style="color: #808080;">//fin de ListerConfigurations</span>
&nbsp;
            <span style="color: #808080;">/// &lt;summary&gt;</span>
            <span style="color: #808080;">/// Affichage d'une configuration</span>
            <span style="color: #808080;">/// &lt;/summary&gt;</span>
            <span style="color: #808080;">/// &lt;param name=&quot;id&quot;&gt;&lt;/param&gt;</span>
            <span style="color: #808080;">/// &lt;returns&gt;&lt;/returns&gt;</span>
&nbsp;
            <span class="br0">&#91;</span>HttpGet<span class="br0">&#93;</span>
            <span style="color: #0000ff;">public</span> ActionResult AfficherConfiguration<span class="br0">&#40;</span><span style="color: #0000ff;">int</span> id<span class="br0">&#41;</span>
            <span class="br0">&#123;</span>
                <span style="color: #0000ff;">try</span>
                <span class="br0">&#123;</span>
                    <span style="color: #808080;">//on recherche la configuration dan le context</span>
&nbsp;
                    VM_Configuration configuration = <span style="color: #0000ff;">new</span> VM_Configuration<span class="br0">&#40;</span><span class="br0">&#41;</span>;
                    configuration = context.Configurations.Include<span class="br0">&#40;</span>config=&gt;config.Postes_travail_config<span class="br0">&#41;</span>.Include<span class="br0">&#40;</span>config=&gt;config.Logiciels<span class="br0">&#41;</span>.Include<span class="br0">&#40;</span>config=&gt;config.sonService<span class="br0">&#41;</span>.Include<span class="br0">&#40;</span>config=&gt;config.sonScript<span class="br0">&#41;</span>.FirstOrDefault<span class="br0">&#40;</span>config=&gt;config.Id_config==id<span class="br0">&#41;</span>;
&nbsp;
&nbsp;
&nbsp;
&nbsp;
                <span style="color: #0000ff;">if</span> <span class="br0">&#40;</span>configuration != <span style="color: #0000ff;">null</span><span class="br0">&#41;</span>
                    <span class="br0">&#123;</span>
&nbsp;
                        <span style="color: #0000ff;">return</span> View<span class="br0">&#40;</span><span style="color: #FF0000;">&quot;AfficherConfiguration&quot;</span>, configuration<span class="br0">&#41;</span>;
&nbsp;
                    <span class="br0">&#125;</span>
&nbsp;
                    <span style="color: #0000ff;">else</span>
                    <span class="br0">&#123;</span>
                        <span style="color: #0000ff;">return</span> HttpNotFound<span class="br0">&#40;</span><span class="br0">&#41;</span>;
&nbsp;
&nbsp;
                    <span class="br0">&#125;</span>
&nbsp;
                <span class="br0">&#125;</span><span style="color: #808080;">//fin de try</span>
&nbsp;
                <span style="color: #0000ff;">catch</span> <span class="br0">&#40;</span>Exception ex<span class="br0">&#41;</span>
                <span class="br0">&#123;</span>
                    Console.WriteLine<span class="br0">&#40;</span><span style="color: #FF0000;">&quot;une erreur s'est produite &agrave; l'affichage de la  configurations d'id <span style="color: black;"><span class="br0">&#123;</span><span style="color: #cc66cc;">0</span><span class="br0">&#125;</span></span>&quot;</span>, id, ex.Message<span class="br0">&#41;</span>;
                    <span style="color: #0000ff;">return</span> HttpNotFound<span class="br0">&#40;</span><span class="br0">&#41;</span>;
&nbsp;
&nbsp;
                <span class="br0">&#125;</span>
&nbsp;
            <span class="br0">&#125;</span><span style="color: #808080;">//fin de AfficherConfiguration</span></pre></td></tr></table></code><hr />
</div>Vue AfficherConfiguration.cshtml<br />
<div class="bbcode_container">
	<div class="bbcode_description">Code:</div>
	<hr /><code class="bbcode_code"><table cellspacing="0" cellpadding="0"><tr><td valign="top" width="33"><div style="border: 1px dashed gray; padding-left: 5px; padding-right: 5px; margin-right: 5px; text-align: right; font-family: monospace">1<br />2<br />3<br />4<br />5<br />6<br />7<br />8<br />9<br />10<br />11<br />12<br />13<br />14<br />15<br />16<br />17<br />18<br />19<br />20<br />21<br />22<br />23<br />24<br />25<br />26<br />27<br />28<br />29<br />30<br />31<br />32<br />33<br />34<br />35<br />36<br />37<br />38<br />39<br />40<br />41<br />42<br />43<br />44<br />45<br />46<br />47<br />48<br />49<br />50<br />51<br />52<br />53<br />54<br />55<br />56<br />57<br />58<br /></div></td><td valign="top"><pre style="margin: 0">&nbsp;
@model Gestion_Configurations.Models.VM_Configuration
&nbsp;
@<span class="br0">&#123;</span>
    ViewBag.Title = <span style="color: #FF0000;">&quot;AfficherConfiguration&quot;</span>;
<span class="br0">&#125;</span>
&nbsp;
&nbsp;
&lt;h4&gt;Afficher le d&eacute;tail d<span style="color: #FF0000;">'une configuration &lt;/h4&gt;</span>
&nbsp;
<span style="color: #FF0000;">&lt;div class=&quot;panel panel-success&quot;&gt;</span>
<span style="color: #FF0000;">    &lt;div class=&quot;panel-heading&quot;&gt;</span>
<span style="color: #FF0000;">        &lt;h5 class=&quot;panel-title&quot;&gt;D&eacute;tail d'</span>une configuration&lt;/h5&gt;
    &lt;/div&gt;
    &lt;div <span style="color: #0000ff;">class</span>=<span style="color: #FF0000;">&quot;panel-body&quot;</span>&gt;
        &lt;label <span style="color: #0000ff;">class</span>=<span style="color: #FF0000;">&quot;col-lg-2 control-label&quot;</span>&gt;Nom configuration &lt;/label&gt;
        &lt;p&gt;@Html.DisplayFor<span class="br0">&#40;</span>Model =&gt; Model.Nom_config<span class="br0">&#41;</span>&lt;/p&gt;
&nbsp;
        &lt;label <span style="color: #0000ff;">class</span>=<span style="color: #FF0000;">&quot;col-lg-2 control-label&quot;</span>&gt;Nom service&lt;/label&gt;
        &lt;p&gt;@Html.DisplayFor<span class="br0">&#40;</span>Model =&gt; Model.sonService.Nom_service<span class="br0">&#41;</span>&lt;/p&gt;
&nbsp;
        &lt;label <span style="color: #0000ff;">class</span>=<span style="color: #FF0000;">&quot;col-lg-2 control-label&quot;</span>&gt;Nom script&lt;/label&gt;
        &lt;p&gt;@Html.DisplayFor<span class="br0">&#40;</span>Model =&gt; Model.sonScript.Nom_script<span class="br0">&#41;</span>&lt;/p&gt;
&nbsp;
        &lt;label <span style="color: #0000ff;">class</span>=<span style="color: #FF0000;">&quot;col-lg-2 control-label&quot;</span>&gt;Nombre postes de travail&lt;/label&gt;
        &lt;p&gt;@Html.DisplayFor<span class="br0">&#40;</span>Model =&gt; Model.Postes_travail_config.Count<span class="br0">&#41;</span>&lt;/p&gt;
&nbsp;
        @foreach <span class="br0">&#40;</span><span style="color: #0000ff;">var</span> pt <span style="color: #0000ff;">in</span> Model.Postes_travail_config<span class="br0">&#41;</span>
        <span class="br0">&#123;</span>
            &lt;label <span style="color: #0000ff;">class</span>=<span style="color: #FF0000;">&quot;col-lg-2 control-label&quot;</span>&gt;Capacit&eacute; Ram&lt;/label&gt;
            &lt;p&gt;@Html.DisplayFor<span class="br0">&#40;</span>Model =&gt; pt.Capacite_RAM<span class="br0">&#41;</span>&lt;/p&gt;
&nbsp;
            &lt;label <span style="color: #0000ff;">class</span>=<span style="color: #FF0000;">&quot;col-lg-2 control-label&quot;</span>&gt;Unit&eacute; RAM&lt;/label&gt;
            &lt;p&gt;@Html.DisplayFor<span class="br0">&#40;</span>Model =&gt; pt.Unite_RAM<span class="br0">&#41;</span>&lt;/p&gt;
&nbsp;
            &lt;label <span style="color: #0000ff;">class</span>=<span style="color: #FF0000;">&quot;col-lg-2 control-label&quot;</span>&gt;Capacit&eacute; Disque&lt;/label&gt;
            &lt;p&gt;@Html.DisplayFor<span class="br0">&#40;</span>Model =&gt; pt.Capacite_Disque<span class="br0">&#41;</span>&lt;/p&gt;
&nbsp;
            &lt;label <span style="color: #0000ff;">class</span>=<span style="color: #FF0000;">&quot;col-lg-2 control-label&quot;</span>&gt;Unit&eacute; capacit&eacute; disque&lt;/label&gt;
            &lt;p&gt;@Html.DisplayFor<span class="br0">&#40;</span>Model =&gt; pt.Unite_capacite_disque<span class="br0">&#41;</span>&lt;/p&gt;
&nbsp;
            &lt;label <span style="color: #0000ff;">class</span>=<span style="color: #FF0000;">&quot;col-lg-2 control-label&quot;</span>&gt;Processeur&lt;/label&gt;
            &lt;p&gt;@Html.DisplayFor<span class="br0">&#40;</span>Model =&gt; pt.sonProcess.Nom_Processeur<span class="br0">&#41;</span>&lt;/p&gt;
&nbsp;
            &lt;label <span style="color: #0000ff;">class</span>=<span style="color: #FF0000;">&quot;col-lg-2 control-label&quot;</span>&gt;Systeme exploitation&lt;/label&gt;
            &lt;p&gt;@Html.DisplayFor<span class="br0">&#40;</span>Model =&gt; pt.sonOS.Nom_OS<span class="br0">&#41;</span>&lt;/p&gt;
&nbsp;
            &lt;label <span style="color: #0000ff;">class</span>=<span style="color: #FF0000;">&quot;col-lg-2 control-label&quot;</span>&gt;Ecran&lt;/label&gt;
            &lt;p&gt;@Html.DisplayFor<span class="br0">&#40;</span>Model =&gt; pt.sonEcran.Nom_ecran<span class="br0">&#41;</span>&lt;/p&gt;
&nbsp;
            &lt;label <span style="color: #0000ff;">class</span>=<span style="color: #FF0000;">&quot;col-lg-2 control-label&quot;</span>&gt;Configuration&lt;/label&gt;
            &lt;p&gt;@Html.DisplayFor<span class="br0">&#40;</span>Model =&gt; pt.saConfig.Nom_config<span class="br0">&#41;</span>&lt;/p&gt;
&nbsp;
&nbsp;
        <span class="br0">&#125;</span>
&nbsp;
    &lt;/div&gt;
&lt;/div&gt;</pre></td></tr></table></code><hr />
</div></div>


	<div style="padding:10px">

	

	
		<fieldset class="fieldset">
			<legend>Images attachées</legend>
				<div style="padding:10px">
				<img class="attach" src="https://www.developpez.net/forums/attachments/p667727d1748426783/dotnet/langages/csharp/recuperer-donnees-d-propriete-navigation-collection/erreur_recup_sonprocess_sonecran_sonos_sonecran.gif/" alt="" />&nbsp;
			</div>
		</fieldset>
	

	

	

	</div>
]]></content:encoded>
			<category domain="https://www.developpez.net/forums/f484/dotnet/langages/csharp/">C#</category>
			<dc:creator>new_wave</dc:creator>
			<guid isPermaLink="true">https://www.developpez.net/forums/d2177187/dotnet/langages/csharp/recuperer-donnees-d-propriete-navigation-collection/</guid>
		</item>
		<item>
			<title>Petit Probleme avec la boucle while</title>
			<link>https://www.developpez.net/forums/showthread.php?t=2177112&amp;goto=newpost</link>
			<pubDate>Mon, 26 May 2025 05:34:49 GMT</pubDate>
			<description>Bonjour tous le monde  
Voila...</description>
			<content:encoded><![CDATA[<div>Bonjour tous le monde <br />
Voila j'ai le code suivant :<br />
  Console.WriteLine(&quot;Entrez un mot Svp :&quot;);<br />
            string Str = Console.ReadLine();      <br />
            while (Str != &quot;Ok&quot;)<br />
            {                <br />
                Console.WriteLine(&quot;Tapez seulement  Ok  Svp !! &quot;);<br />
            }<br />
  je veux que l'utilisateur ne puisse pas sortir de cette boucle tant qu'il n'a pas saisie Ok <br />
J'ai essayé plusieurs methodes avec Return avec break avec do while mais rien de nouveau.<br />
avec windowsform ça marche impeccablement comme ce code par exemple <br />
while (dt &lt; Dtp_Naiss.Value || dt &lt; Dtp_Deliv.Value)<br />
            {<br />
                MessageBox.Show(&quot; Entrez une date valide Svp&quot;);<br />
                return;<br />
            }<br />
Merci à tous</div>

]]></content:encoded>
			<category domain="https://www.developpez.net/forums/f484/dotnet/langages/csharp/">C#</category>
			<dc:creator>Saidtoufik</dc:creator>
			<guid isPermaLink="true">https://www.developpez.net/forums/d2177112/dotnet/langages/csharp/petit-probleme-boucle-while/</guid>
		</item>
		<item>
			<title>Utilisation de Material Design avec WPF et .NET 8</title>
			<link>https://www.developpez.net/forums/showthread.php?t=2176931&amp;goto=newpost</link>
			<pubDate>Sat, 17 May 2025 09:31:01 GMT</pubDate>
			<description><![CDATA[Bonjour, 
 
J'essaie de...]]></description>
			<content:encoded><![CDATA[<div>Bonjour,<br />
<br />
J'essaie de styliser un calendrier avec un style Material Design et le fait de mettre une image ou du svg à la place de l'icône du calendar, le calendrier ne s'ouvre pas, je vous remercie pour votre aide.<br />
<br />
Mon style<br />
<div class="bbcode_container">
	<div class="bbcode_description">Code:</div>
	<hr /><code class="bbcode_code"><table cellspacing="0" cellpadding="0"><tr><td valign="top" width="33"><div style="border: 1px dashed gray; padding-left: 5px; padding-right: 5px; margin-right: 5px; text-align: right; font-family: monospace">1<br />2<br />3<br />4<br />5<br />6<br />7<br />8<br />9<br />10<br />11<br />12<br />13<br />14<br />15<br />16<br />17<br />18<br />19<br />20<br />21<br />22<br />23<br />24<br />25<br />26<br />27<br />28<br />29<br />30<br />31<br />32<br />33<br />34<br />35<br />36<br />37<br />38<br />39<br />40<br />41<br />42<br />43<br />44<br />45<br />46<br />47<br />48<br />49<br />50<br />51<br />52<br />53<br />54<br /></div></td><td valign="top"><pre style="margin: 0">&nbsp;
&lt;Style x:Key=<span style="color: #FF0000;">&quot;ColoredDatePickerStyle&quot;</span> TargetType=<span style="color: #FF0000;">&quot;DatePicker&quot;</span>&gt;
    &lt;Setter Property=<span style="color: #FF0000;">&quot;Height&quot;</span> Value=<span style="color: #FF0000;">&quot;30&quot;</span> /&gt;
    &lt;Setter Property=<span style="color: #FF0000;">&quot;FontSize&quot;</span> Value=<span style="color: #FF0000;">&quot;14&quot;</span> /&gt;
    &lt;Setter Property=<span style="color: #FF0000;">&quot;Foreground&quot;</span> Value=<span style="color: #FF0000;">&quot;Black&quot;</span> /&gt;
    &lt;Setter Property=<span style="color: #FF0000;">&quot;Background&quot;</span> Value=<span style="color: #FF0000;">&quot;White&quot;</span> /&gt;
    &lt;Setter Property=<span style="color: #FF0000;">&quot;BorderBrush&quot;</span> Value=<span style="color: #FF0000;">&quot;<span style="color: black;"><span class="br0">&#123;</span>StaticResource SecondaryColor<span class="br0">&#125;</span></span>&quot;</span> /&gt;
    &lt;Setter Property=<span style="color: #FF0000;">&quot;BorderThickness&quot;</span> Value=<span style="color: #FF0000;">&quot;1&quot;</span> /&gt;
    &lt;Setter Property=<span style="color: #FF0000;">&quot;Template&quot;</span>&gt;
        &lt;Setter.Value&gt;
            &lt;ControlTemplate TargetType=<span style="color: #FF0000;">&quot;DatePicker&quot;</span>&gt;
                &lt;Grid&gt;
                    &lt;Grid.ColumnDefinitions&gt;
                        &lt;ColumnDefinition Width=<span style="color: #FF0000;">&quot;*&quot;</span> /&gt;
                        &lt;ColumnDefinition Width=<span style="color: #FF0000;">&quot;30&quot;</span> /&gt;
                    &lt;/Grid.ColumnDefinitions&gt;
&nbsp;
                    &lt;!-- Bordure --&gt;
                    &lt;Border Grid.ColumnSpan=<span style="color: #FF0000;">&quot;2&quot;</span>
                        Background=<span style="color: #FF0000;">&quot;<span style="color: black;"><span class="br0">&#123;</span>TemplateBinding Background<span class="br0">&#125;</span></span>&quot;</span>
                        BorderBrush=<span style="color: #FF0000;">&quot;<span style="color: black;"><span class="br0">&#123;</span>TemplateBinding BorderBrush<span class="br0">&#125;</span></span>&quot;</span>
                        BorderThickness=<span style="color: #FF0000;">&quot;<span style="color: black;"><span class="br0">&#123;</span>TemplateBinding BorderThickness<span class="br0">&#125;</span></span>&quot;</span>
                        CornerRadius=<span style="color: #FF0000;">&quot;4&quot;</span> /&gt;
&nbsp;
                    &lt;!-- Zone de texte --&gt;
                    &lt;DatePickerTextBox x:Name=<span style="color: #FF0000;">&quot;PART_TextBox&quot;</span>
                                   Grid.Column=<span style="color: #FF0000;">&quot;0&quot;</span>
                                   Padding=<span style="color: #FF0000;">&quot;6,2,4,4&quot;</span>
                                   Background=<span style="color: #FF0000;">&quot;Transparent&quot;</span>
                                   BorderThickness=<span style="color: #FF0000;">&quot;0&quot;</span>
                                   VerticalContentAlignment=<span style="color: #FF0000;">&quot;Center&quot;</span>
                                   Foreground=<span style="color: #FF0000;">&quot;<span style="color: black;"><span class="br0">&#123;</span>TemplateBinding Foreground<span class="br0">&#125;</span></span>&quot;</span> /&gt;
&nbsp;
                    &lt;!-- Bouton calendrier --&gt;
                    &lt;Button x:Name=<span style="color: #FF0000;">&quot;PART_Button&quot;</span>
                        Grid.Column=<span style="color: #FF0000;">&quot;1&quot;</span>
                        Background=<span style="color: #FF0000;">&quot;Transparent&quot;</span>
                        BorderBrush=<span style="color: #FF0000;">&quot;<span style="color: black;"><span class="br0">&#123;</span>x:Null<span class="br0">&#125;</span></span>&quot;</span>
                        Focusable=<span style="color: #FF0000;">&quot;False&quot;</span>
                        Cursor=<span style="color: #FF0000;">&quot;Hand&quot;</span>
                        ToolTip=<span style="color: #FF0000;">&quot;Ouvrir le calendrier&quot;</span>&gt;
                        &lt;Viewbox Width=<span style="color: #FF0000;">&quot;16&quot;</span> Height=<span style="color: #FF0000;">&quot;16&quot;</span>&gt;
                            &lt;Canvas Width=<span style="color: #FF0000;">&quot;24&quot;</span> Height=<span style="color: #FF0000;">&quot;24&quot;</span>&gt;
                    &lt;!-- Ic&ocirc;ne calendrier  --&gt;
                                &lt;Path Data=<span style="color: #FF0000;">&quot;M3,6 L5,6 L5,4 L7,4 L7,6 L17,6 L17,4 L19,4 L19,6 L21,6 L21,20 L3,20 Z&quot;</span>
                                  Fill=<span style="color: #FF0000;">&quot;#F7C23E&quot;</span> /&gt;
                            &lt;/Canvas&gt;
                        &lt;/Viewbox&gt;
                    &lt;/Button&gt;
                &lt;/Grid&gt;
            &lt;/ControlTemplate&gt;
        &lt;/Setter.Value&gt;
    &lt;/Setter&gt;
&lt;/Style&gt;</pre></td></tr></table></code><hr />
</div><br />
Mon DatePicker<br />
<div class="bbcode_container">
	<div class="bbcode_description">Code:</div>
	<hr /><code class="bbcode_code"><table cellspacing="0" cellpadding="0"><tr><td valign="top" width="26"><div style="border: 1px dashed gray; padding-left: 5px; padding-right: 5px; margin-right: 5px; text-align: right; font-family: monospace">1<br />2<br />3<br />4<br />5<br /></div></td><td valign="top"><pre style="margin: 0">&nbsp;
&lt;StackPanel Orientation=<span style="color: #FF0000;">&quot;Horizontal&quot;</span> Margin=<span style="color: #FF0000;">&quot;0,5&quot;</span>&gt;
    &lt;TextBlock Text=<span style="color: #FF0000;">&quot;Date :&quot;</span> Width=<span style="color: #FF0000;">&quot;150&quot;</span> VerticalAlignment=<span style="color: #FF0000;">&quot;Center&quot;</span>/&gt;
    &lt;DatePicker x:Name=<span style="color: #FF0000;">&quot;DatePicker&quot;</span> Width=<span style="color: #FF0000;">&quot;200&quot;</span> Style=<span style="color: #FF0000;">&quot;<span style="color: black;"><span class="br0">&#123;</span>StaticResource ColoredDatePickerStyle<span class="br0">&#125;</span></span>&quot;</span>/&gt;
&lt;/StackPanel&gt;</pre></td></tr></table></code><hr />
</div></div>

]]></content:encoded>
			<category domain="https://www.developpez.net/forums/f484/dotnet/langages/csharp/">C#</category>
			<dc:creator>TBA_78</dc:creator>
			<guid isPermaLink="true">https://www.developpez.net/forums/d2176931/dotnet/langages/csharp/utilisation-material-design-wpf-net-8-a/</guid>
		</item>
	</channel>
</rss>
