소스 검색

CHG Integration des nouveaux Webservices

olivier.massot 7 년 전
부모
커밋
753a1ec134
28개의 변경된 파일2876개의 추가작업 그리고 53개의 파일을 삭제
  1. 1 0
      CD67.FicheCollege.Entity/ActionEdu.cs
  2. 9 2
      CD67.FicheCollege.Entity/App.config
  3. 55 5
      CD67.FicheCollege.Entity/CD67.FicheCollege.Entity.csproj
  4. 3 0
      CD67.FicheCollege.Entity/EntityModel.edmx
  5. 20 2
      CD67.FicheCollege.Entity/Extend/ActionEdu.cs
  6. 10 7
      CD67.FicheCollege.Entity/Extend/College.cs
  7. 23 3
      CD67.FicheCollege.Entity/Properties/Settings.Designer.cs
  8. 8 2
      CD67.FicheCollege.Entity/Properties/Settings.settings
  9. 7 4
      CD67.FicheCollege.Entity/Web References/WsAgents/Reference.cs
  10. 2 2
      CD67.FicheCollege.Entity/Web References/WsAgents/Reference.map
  11. 6 0
      CD67.FicheCollege.Entity/Web References/WsAgents/WsAgents.disco
  12. 17 16
      CD67.FicheCollege.Entity/Web References/WsAgents/WsAgents.wsdl
  13. 0 6
      CD67.FicheCollege.Entity/Web References/WsAgents/agents.disco
  14. 10 0
      CD67.FicheCollege.Entity/Web References/WsExternes/Agent.datasource
  15. 736 0
      CD67.FicheCollege.Entity/Web References/WsExternes/Reference.cs
  16. 7 0
      CD67.FicheCollege.Entity/Web References/WsExternes/Reference.map
  17. 6 0
      CD67.FicheCollege.Entity/Web References/WsExternes/WsExternes.disco
  18. 609 0
      CD67.FicheCollege.Entity/Web References/WsExternes/WsExternes.wsdl
  19. 667 0
      CD67.FicheCollege.Entity/Web References/WsTiers/Reference.cs
  20. 7 0
      CD67.FicheCollege.Entity/Web References/WsTiers/Reference.map
  21. 10 0
      CD67.FicheCollege.Entity/Web References/WsTiers/Tiers.datasource
  22. 6 0
      CD67.FicheCollege.Entity/Web References/WsTiers/WsTiers.disco
  23. 590 0
      CD67.FicheCollege.Entity/Web References/WsTiers/WsTiers.wsdl
  24. 6 1
      CD67.FicheCollege.MVC/Controllers/ActionsEduController.cs
  25. 29 1
      CD67.FicheCollege.MVC/Views/ActionsEdu/Create.cshtml
  26. 3 0
      CD67.FicheCollege.MVC/Views/ActionsEdu/Details.cshtml
  27. 27 0
      CD67.FicheCollege.MVC/Views/ActionsEdu/Edit.cshtml
  28. 2 2
      CD67.FicheCollege.MVC/Views/Colleges/Edit.cshtml

+ 1 - 0
CD67.FicheCollege.Entity/ActionEdu.cs

@@ -25,6 +25,7 @@ namespace CD67.FicheCollege.Entity
         public string Numero { get; set; }
         public string Nom { get; set; }
         public decimal Montant { get; set; }
+        public string TiersSid { get; set; }
         public string Description { get; set; }
         public bool Neutralise { get; set; }
         public int Ordre { get; set; }

+ 9 - 2
CD67.FicheCollege.Entity/App.config

@@ -31,8 +31,15 @@
   </startup>
   <applicationSettings>
     <CD67.FicheCollege.Entity.Properties.Settings>
-      <setting name="CD67_FicheCollege_Entity_WsAgents_Agents" serializeAs="String">
-        <value>http://t-referentiel.bas-rhin.fr/webservices/agents.asmx</value>
+      <setting name="CD67_FicheCollege_Entity_WsAgents_WsAgents" serializeAs="String">
+        <value>http://referentiel.bas-rhin.fr/webservices/WsAgents.asmx</value>
+      </setting>
+      <setting name="CD67_FicheCollege_Entity_WsTiers_WsTiers" serializeAs="String">
+        <value>http://referentiel.bas-rhin.fr/webservices/WsTiers.asmx</value>
+      </setting>
+      <setting name="CD67_FicheCollege_Entity_WsExternes_WsExternes"
+        serializeAs="String">
+        <value>http://referentiel.bas-rhin.fr/webservices/WsExternes.asmx</value>
       </setting>
     </CD67.FicheCollege.Entity.Properties.Settings>
   </applicationSettings>

+ 55 - 5
CD67.FicheCollege.Entity/CD67.FicheCollege.Entity.csproj

@@ -124,6 +124,16 @@
       <DesignTime>True</DesignTime>
       <DependentUpon>Reference.map</DependentUpon>
     </Compile>
+    <Compile Include="Web References\WsExternes\Reference.cs">
+      <AutoGen>True</AutoGen>
+      <DesignTime>True</DesignTime>
+      <DependentUpon>Reference.map</DependentUpon>
+    </Compile>
+    <Compile Include="Web References\WsTiers\Reference.cs">
+      <AutoGen>True</AutoGen>
+      <DesignTime>True</DesignTime>
+      <DependentUpon>Reference.map</DependentUpon>
+    </Compile>
   </ItemGroup>
   <ItemGroup>
     <None Include="App.config">
@@ -146,11 +156,27 @@
     <None Include="Web References\WsAgents\Agent.datasource">
       <DependentUpon>Reference.map</DependentUpon>
     </None>
-    <None Include="Web References\WsAgents\agents.wsdl" />
     <None Include="Web References\WsAgents\Reference.map">
       <Generator>MSDiscoCodeGenerator</Generator>
       <LastGenOutput>Reference.cs</LastGenOutput>
     </None>
+    <None Include="Web References\WsAgents\WsAgents.wsdl" />
+    <None Include="Web References\WsExternes\Agent.datasource">
+      <DependentUpon>Reference.map</DependentUpon>
+    </None>
+    <None Include="Web References\WsExternes\Reference.map">
+      <Generator>MSDiscoCodeGenerator</Generator>
+      <LastGenOutput>Reference.cs</LastGenOutput>
+    </None>
+    <None Include="Web References\WsExternes\WsExternes.wsdl" />
+    <None Include="Web References\WsTiers\Reference.map">
+      <Generator>MSDiscoCodeGenerator</Generator>
+      <LastGenOutput>Reference.cs</LastGenOutput>
+    </None>
+    <None Include="Web References\WsTiers\Tiers.datasource">
+      <DependentUpon>Reference.map</DependentUpon>
+    </None>
+    <None Include="Web References\WsTiers\WsTiers.wsdl" />
   </ItemGroup>
   <ItemGroup>
     <Service Include="{508349B6-6B84-4DF5-91F0-309BEEBAD82D}" />
@@ -168,7 +194,9 @@
       <LastGenOutput>EntityModel.cs</LastGenOutput>
     </Content>
     <Content Include="Model_initial_inserts.sql" />
-    <None Include="Web References\WsAgents\agents.disco" />
+    <None Include="Web References\WsExternes\WsExternes.disco" />
+    <None Include="Web References\WsTiers\WsTiers.disco" />
+    <None Include="Web References\WsAgents\WsAgents.disco" />
   </ItemGroup>
   <ItemGroup>
     <WCFMetadata Include="Service References\" />
@@ -177,16 +205,38 @@
     <WebReferences Include="Web References\" />
   </ItemGroup>
   <ItemGroup>
-    <WebReferenceUrl Include="http://t-referentiel.bas-rhin.fr/webservices/agents.asmx">
+    <WebReferenceUrl Include="http://referentiel.bas-rhin.fr/webservices/WsAgents.asmx">
       <UrlBehavior>Dynamic</UrlBehavior>
       <RelPath>Web References\WsAgents\</RelPath>
-      <UpdateFromURL>http://t-referentiel.bas-rhin.fr/webservices/agents.asmx</UpdateFromURL>
+      <UpdateFromURL>http://referentiel.bas-rhin.fr/webservices/WsAgents.asmx</UpdateFromURL>
+      <ServiceLocationURL>
+      </ServiceLocationURL>
+      <CachedDynamicPropName>
+      </CachedDynamicPropName>
+      <CachedAppSettingsObjectName>Settings</CachedAppSettingsObjectName>
+      <CachedSettingsPropName>CD67_FicheCollege_Entity_WsAgents_WsAgents</CachedSettingsPropName>
+    </WebReferenceUrl>
+    <WebReferenceUrl Include="http://referentiel.bas-rhin.fr/webservices/WsExternes.asmx">
+      <UrlBehavior>Dynamic</UrlBehavior>
+      <RelPath>Web References\WsExternes\</RelPath>
+      <UpdateFromURL>http://referentiel.bas-rhin.fr/webservices/WsExternes.asmx</UpdateFromURL>
+      <ServiceLocationURL>
+      </ServiceLocationURL>
+      <CachedDynamicPropName>
+      </CachedDynamicPropName>
+      <CachedAppSettingsObjectName>Settings</CachedAppSettingsObjectName>
+      <CachedSettingsPropName>CD67_FicheCollege_Entity_WsExternes_WsExternes</CachedSettingsPropName>
+    </WebReferenceUrl>
+    <WebReferenceUrl Include="http://referentiel.bas-rhin.fr/webservices/WsTiers.asmx">
+      <UrlBehavior>Dynamic</UrlBehavior>
+      <RelPath>Web References\WsTiers\</RelPath>
+      <UpdateFromURL>http://referentiel.bas-rhin.fr/webservices/WsTiers.asmx</UpdateFromURL>
       <ServiceLocationURL>
       </ServiceLocationURL>
       <CachedDynamicPropName>
       </CachedDynamicPropName>
       <CachedAppSettingsObjectName>Settings</CachedAppSettingsObjectName>
-      <CachedSettingsPropName>CD67_FicheCollege_Entity_WsAgents_Agents</CachedSettingsPropName>
+      <CachedSettingsPropName>CD67_FicheCollege_Entity_WsTiers_WsTiers</CachedSettingsPropName>
     </WebReferenceUrl>
   </ItemGroup>
   <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />

+ 3 - 0
CD67.FicheCollege.Entity/EntityModel.edmx

@@ -42,6 +42,7 @@
           <Property Name="Numero" Type="nvarchar(max)" Nullable="false" />
           <Property Name="Nom" Type="nvarchar(max)" Nullable="false" />
           <Property Name="Montant" Type="decimal" Precision="18" Scale="0" Nullable="false" />
+          <Property Name="TiersSid" Type="nvarchar" MaxLength="7" />
           <Property Name="Description" Type="nvarchar(max)" />
           <Property Name="Neutralise" Type="bit" Nullable="false" />
           <Property Name="Ordre" Type="int" Nullable="false" />
@@ -451,6 +452,7 @@
           <Property Name="Numero" Type="String" Nullable="false" MaxLength="Max" Unicode="true" FixedLength="false" />
           <Property Name="Nom" Type="String" Nullable="false" MaxLength="Max" Unicode="true" FixedLength="false" />
           <Property Name="Montant" Type="Decimal" Nullable="false" DefaultValue="0" Precision="18" Scale="0" />
+          <Property Name="TiersSid" Type="String" />
           <Property Name="Description" Type="String" Nullable="true" MaxLength="Max" Unicode="true" FixedLength="false" />
           <Property Name="Neutralise" Type="Boolean" Nullable="false" />
           <Property Name="Ordre" Type="Int32" Nullable="false" />
@@ -649,6 +651,7 @@
     <EntitySetMapping Name="ActionsEdu">
       <EntityTypeMapping TypeName="IsTypeOf(CD67.FicheCollege.ActionEdu)">
         <MappingFragment StoreEntitySet="ActionsEdu">
+                <ScalarProperty Name="TiersSid" ColumnName="TiersSid" />
                 <ScalarProperty Name="Montant" ColumnName="Montant" />
                 <ScalarProperty Name="Id" ColumnName="Id" />
           <ScalarProperty Name="Numero" ColumnName="Numero" />

+ 20 - 2
CD67.FicheCollege.Entity/Extend/ActionEdu.cs

@@ -1,4 +1,6 @@
-using System.ComponentModel.DataAnnotations;
+using CD67.FicheCollege.Entity.WsTiers;
+using System;
+using System.ComponentModel.DataAnnotations;
 using System.Linq;
 
 namespace CD67.FicheCollege.Entity
@@ -13,7 +15,20 @@ namespace CD67.FicheCollege.Entity
         {
             get
             {
-                return this.ActionsEduColleges.Sum(mbox=>mbox.NbEleves);
+                return this.ActionsEduColleges.Sum(mbox => mbox.NbEleves);
+            }
+        }
+
+        public Tiers tiers;
+        // Charge les données du tiers depuis le web-service
+        public void hydrate()
+        {
+            WsTiers.WsTiers wsTiers = new WsTiers.WsTiers();
+            wsTiers.UseDefaultCredentials = true;
+
+            if (!String.IsNullOrEmpty(TiersSid))
+            {
+                tiers = wsTiers.GetById(TiersSid);
             }
         }
     }
@@ -47,6 +62,9 @@ namespace CD67.FicheCollege.Entity
         [Display(Name = "Montant")]
         public decimal Montant { get; set; }
 
+        [Display(Name = "Tiers")]
+        public string TiersSid { get; set; }
+
         [Display(Name = "Description")]
         [DataType(DataType.MultilineText)]
         public string Description { get; set; }

+ 10 - 7
CD67.FicheCollege.Entity/Extend/College.cs

@@ -1,4 +1,5 @@
 using CD67.FicheCollege.Entity.WsAgents;
+using CD67.FicheCollege.Entity.WsExternes;
 using System;
 using System.ComponentModel.DataAnnotations;
 
@@ -12,24 +13,26 @@ namespace CD67.FicheCollege.Entity
     {
         public string AdresseComplete => $"{this.Adresse}\n{this.Code_Postal} {this.Commune}";
 
-        public Agent principal;
-        public Agent adjoint;
-        public Agent gestionnaire1;
-        public Agent gestionnaire2;
+        public WsExternes.Agent principal;
+        public WsExternes.Agent adjoint;
+        public WsAgents.Agent gestionnaire1;
+        public WsAgents.Agent gestionnaire2;
 
         // Charge les données d'identité des agents depuis le web-service
         public void hydrate()
         {
-            Entity.WsAgents.Agents wsAgents = new Entity.WsAgents.Agents();
+            Entity.WsExternes.WsExternes wsExternes = new Entity.WsExternes.WsExternes();
+            wsExternes.UseDefaultCredentials = true;
+            Entity.WsAgents.WsAgents wsAgents = new Entity.WsAgents.WsAgents();
             wsAgents.UseDefaultCredentials = true;
 
             if (!String.IsNullOrEmpty(PrincipalSid))
             {
-                principal = wsAgents.GetById(PrincipalSid);
+                principal = wsExternes.GetById(PrincipalSid);
             }
             if (!String.IsNullOrEmpty(AdjointSid))
             {
-                adjoint = wsAgents.GetById(AdjointSid);
+                adjoint = wsExternes.GetById(AdjointSid);
             }
             if (!String.IsNullOrEmpty(Gestionnaire1Sid))
             {

+ 23 - 3
CD67.FicheCollege.Entity/Properties/Settings.Designer.cs

@@ -26,10 +26,30 @@ namespace CD67.FicheCollege.Entity.Properties {
         [global::System.Configuration.ApplicationScopedSettingAttribute()]
         [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
         [global::System.Configuration.SpecialSettingAttribute(global::System.Configuration.SpecialSetting.WebServiceUrl)]
-        [global::System.Configuration.DefaultSettingValueAttribute("http://t-referentiel.bas-rhin.fr/webservices/agents.asmx")]
-        public string CD67_FicheCollege_Entity_WsAgents_Agents {
+        [global::System.Configuration.DefaultSettingValueAttribute("http://referentiel.bas-rhin.fr/webservices/WsAgents.asmx")]
+        public string CD67_FicheCollege_Entity_WsAgents_WsAgents {
             get {
-                return ((string)(this["CD67_FicheCollege_Entity_WsAgents_Agents"]));
+                return ((string)(this["CD67_FicheCollege_Entity_WsAgents_WsAgents"]));
+            }
+        }
+        
+        [global::System.Configuration.ApplicationScopedSettingAttribute()]
+        [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+        [global::System.Configuration.SpecialSettingAttribute(global::System.Configuration.SpecialSetting.WebServiceUrl)]
+        [global::System.Configuration.DefaultSettingValueAttribute("http://referentiel.bas-rhin.fr/webservices/WsTiers.asmx")]
+        public string CD67_FicheCollege_Entity_WsTiers_WsTiers {
+            get {
+                return ((string)(this["CD67_FicheCollege_Entity_WsTiers_WsTiers"]));
+            }
+        }
+        
+        [global::System.Configuration.ApplicationScopedSettingAttribute()]
+        [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+        [global::System.Configuration.SpecialSettingAttribute(global::System.Configuration.SpecialSetting.WebServiceUrl)]
+        [global::System.Configuration.DefaultSettingValueAttribute("http://referentiel.bas-rhin.fr/webservices/WsExternes.asmx")]
+        public string CD67_FicheCollege_Entity_WsExternes_WsExternes {
+            get {
+                return ((string)(this["CD67_FicheCollege_Entity_WsExternes_WsExternes"]));
             }
         }
     }

+ 8 - 2
CD67.FicheCollege.Entity/Properties/Settings.settings

@@ -2,8 +2,14 @@
 <SettingsFile xmlns="http://schemas.microsoft.com/VisualStudio/2004/01/settings" CurrentProfile="(Default)" GeneratedClassNamespace="CD67.FicheCollege.Entity.Properties" GeneratedClassName="Settings">
   <Profiles />
   <Settings>
-    <Setting Name="CD67_FicheCollege_Entity_WsAgents_Agents" Type="(Web Service URL)" Scope="Application">
-      <Value Profile="(Default)">http://t-referentiel.bas-rhin.fr/webservices/agents.asmx</Value>
+    <Setting Name="CD67_FicheCollege_Entity_WsAgents_WsAgents" Type="(Web Service URL)" Scope="Application">
+      <Value Profile="(Default)">http://referentiel.bas-rhin.fr/webservices/WsAgents.asmx</Value>
+    </Setting>
+    <Setting Name="CD67_FicheCollege_Entity_WsTiers_WsTiers" Type="(Web Service URL)" Scope="Application">
+      <Value Profile="(Default)">http://referentiel.bas-rhin.fr/webservices/WsTiers.asmx</Value>
+    </Setting>
+    <Setting Name="CD67_FicheCollege_Entity_WsExternes_WsExternes" Type="(Web Service URL)" Scope="Application">
+      <Value Profile="(Default)">http://referentiel.bas-rhin.fr/webservices/WsExternes.asmx</Value>
     </Setting>
   </Settings>
 </SettingsFile>

+ 7 - 4
CD67.FicheCollege.Entity/Web References/WsAgents/Reference.cs

@@ -26,8 +26,8 @@ namespace CD67.FicheCollege.Entity.WsAgents {
     [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Web.Services", "4.6.1590.0")]
     [System.Diagnostics.DebuggerStepThroughAttribute()]
     [System.ComponentModel.DesignerCategoryAttribute("code")]
-    [System.Web.Services.WebServiceBindingAttribute(Name="AgentsSoap", Namespace="http://tempuri.org/")]
-    public partial class Agents : System.Web.Services.Protocols.SoapHttpClientProtocol {
+    [System.Web.Services.WebServiceBindingAttribute(Name="WsAgentsSoap", Namespace="http://tempuri.org/")]
+    public partial class WsAgents : System.Web.Services.Protocols.SoapHttpClientProtocol {
         
         private System.Threading.SendOrPostCallback GetByIdOperationCompleted;
         
@@ -46,8 +46,8 @@ namespace CD67.FicheCollege.Entity.WsAgents {
         private bool useDefaultCredentialsSetExplicitly;
         
         /// <remarks/>
-        public Agents() {
-            this.Url = global::CD67.FicheCollege.Entity.Properties.Settings.Default.CD67_FicheCollege_Entity_WsAgents_Agents;
+        public WsAgents() {
+            this.Url = global::CD67.FicheCollege.Entity.Properties.Settings.Default.CD67_FicheCollege_Entity_WsAgents_WsAgents;
             if ((this.IsLocalFileSystemWebService(this.Url) == true)) {
                 this.UseDefaultCredentials = true;
                 this.useDefaultCredentialsSetExplicitly = false;
@@ -545,6 +545,9 @@ namespace CD67.FicheCollege.Entity.WsAgents {
         
         /// <remarks/>
         PartenaireProche,
+        
+        /// <remarks/>
+        Externe,
     }
     
     /// <remarks/>

+ 2 - 2
CD67.FicheCollege.Entity/Web References/WsAgents/Reference.map

@@ -1,7 +1,7 @@
 <?xml version="1.0" encoding="utf-8"?>
 <DiscoveryClientResultsFile xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
   <Results>
-    <DiscoveryClientResult referenceType="System.Web.Services.Discovery.ContractReference" url="http://t-referentiel.bas-rhin.fr/webservices/agents.asmx?wsdl" filename="agents.wsdl" />
-    <DiscoveryClientResult referenceType="System.Web.Services.Discovery.DiscoveryDocumentReference" url="http://t-referentiel.bas-rhin.fr/webservices/agents.asmx?disco" filename="agents.disco" />
+    <DiscoveryClientResult referenceType="System.Web.Services.Discovery.ContractReference" url="http://referentiel.bas-rhin.fr/webservices/WsAgents.asmx?wsdl" filename="WsAgents.wsdl" />
+    <DiscoveryClientResult referenceType="System.Web.Services.Discovery.DiscoveryDocumentReference" url="http://referentiel.bas-rhin.fr/webservices/WsAgents.asmx?disco" filename="WsAgents.disco" />
   </Results>
 </DiscoveryClientResultsFile>

+ 6 - 0
CD67.FicheCollege.Entity/Web References/WsAgents/WsAgents.disco

@@ -0,0 +1,6 @@
+<?xml version="1.0" encoding="utf-8"?>
+<discovery xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="http://schemas.xmlsoap.org/disco/">
+  <contractRef ref="http://referentiel.bas-rhin.fr/webservices/WsAgents.asmx?wsdl" docRef="http://referentiel.bas-rhin.fr/webservices/WsAgents.asmx" xmlns="http://schemas.xmlsoap.org/disco/scl/" />
+  <soap address="http://referentiel.bas-rhin.fr/webservices/WsAgents.asmx" xmlns:q1="http://tempuri.org/" binding="q1:WsAgentsSoap" xmlns="http://schemas.xmlsoap.org/disco/soap/" />
+  <soap address="http://referentiel.bas-rhin.fr/webservices/WsAgents.asmx" xmlns:q2="http://tempuri.org/" binding="q2:WsAgentsSoap12" xmlns="http://schemas.xmlsoap.org/disco/soap/" />
+</discovery>

+ 17 - 16
CD67.FicheCollege.Entity/Web References/WsAgents/agents.wsdl → CD67.FicheCollege.Entity/Web References/WsAgents/WsAgents.wsdl

@@ -41,6 +41,7 @@
         <s:restriction base="s:string">
           <s:enumeration value="Agent" />
           <s:enumeration value="PartenaireProche" />
+          <s:enumeration value="Externe" />
         </s:restriction>
       </s:simpleType>
       <s:element name="GetByIds">
@@ -263,7 +264,7 @@
   <wsdl:message name="GetManyBySortedHttpPostOut">
     <wsdl:part name="Body" element="tns:ArrayOfAgent" />
   </wsdl:message>
-  <wsdl:portType name="AgentsSoap">
+  <wsdl:portType name="WsAgentsSoap">
     <wsdl:operation name="GetById">
       <wsdl:input message="tns:GetByIdSoapIn" />
       <wsdl:output message="tns:GetByIdSoapOut" />
@@ -293,7 +294,7 @@
       <wsdl:output message="tns:GetManyBySortedSoapOut" />
     </wsdl:operation>
   </wsdl:portType>
-  <wsdl:portType name="AgentsHttpGet">
+  <wsdl:portType name="WsAgentsHttpGet">
     <wsdl:operation name="GetById">
       <wsdl:input message="tns:GetByIdHttpGetIn" />
       <wsdl:output message="tns:GetByIdHttpGetOut" />
@@ -319,7 +320,7 @@
       <wsdl:output message="tns:GetManyBySortedHttpGetOut" />
     </wsdl:operation>
   </wsdl:portType>
-  <wsdl:portType name="AgentsHttpPost">
+  <wsdl:portType name="WsAgentsHttpPost">
     <wsdl:operation name="GetById">
       <wsdl:input message="tns:GetByIdHttpPostIn" />
       <wsdl:output message="tns:GetByIdHttpPostOut" />
@@ -345,7 +346,7 @@
       <wsdl:output message="tns:GetManyBySortedHttpPostOut" />
     </wsdl:operation>
   </wsdl:portType>
-  <wsdl:binding name="AgentsSoap" type="tns:AgentsSoap">
+  <wsdl:binding name="WsAgentsSoap" type="tns:WsAgentsSoap">
     <soap:binding transport="http://schemas.xmlsoap.org/soap/http" />
     <wsdl:operation name="GetById">
       <soap:operation soapAction="http://tempuri.org/GetById" style="document" />
@@ -411,7 +412,7 @@
       </wsdl:output>
     </wsdl:operation>
   </wsdl:binding>
-  <wsdl:binding name="AgentsSoap12" type="tns:AgentsSoap">
+  <wsdl:binding name="WsAgentsSoap12" type="tns:WsAgentsSoap">
     <soap12:binding transport="http://schemas.xmlsoap.org/soap/http" />
     <wsdl:operation name="GetById">
       <soap12:operation soapAction="http://tempuri.org/GetById" style="document" />
@@ -477,7 +478,7 @@
       </wsdl:output>
     </wsdl:operation>
   </wsdl:binding>
-  <wsdl:binding name="AgentsHttpGet" type="tns:AgentsHttpGet">
+  <wsdl:binding name="WsAgentsHttpGet" type="tns:WsAgentsHttpGet">
     <http:binding verb="GET" />
     <wsdl:operation name="GetById">
       <http:operation location="/GetById" />
@@ -534,7 +535,7 @@
       </wsdl:output>
     </wsdl:operation>
   </wsdl:binding>
-  <wsdl:binding name="AgentsHttpPost" type="tns:AgentsHttpPost">
+  <wsdl:binding name="WsAgentsHttpPost" type="tns:WsAgentsHttpPost">
     <http:binding verb="POST" />
     <wsdl:operation name="GetById">
       <http:operation location="/GetById" />
@@ -591,18 +592,18 @@
       </wsdl:output>
     </wsdl:operation>
   </wsdl:binding>
-  <wsdl:service name="Agents">
-    <wsdl:port name="AgentsSoap" binding="tns:AgentsSoap">
-      <soap:address location="http://t-referentiel.bas-rhin.fr/webservices/agents.asmx" />
+  <wsdl:service name="WsAgents">
+    <wsdl:port name="WsAgentsSoap" binding="tns:WsAgentsSoap">
+      <soap:address location="http://referentiel.bas-rhin.fr/webservices/WsAgents.asmx" />
     </wsdl:port>
-    <wsdl:port name="AgentsSoap12" binding="tns:AgentsSoap12">
-      <soap12:address location="http://t-referentiel.bas-rhin.fr/webservices/agents.asmx" />
+    <wsdl:port name="WsAgentsSoap12" binding="tns:WsAgentsSoap12">
+      <soap12:address location="http://referentiel.bas-rhin.fr/webservices/WsAgents.asmx" />
     </wsdl:port>
-    <wsdl:port name="AgentsHttpGet" binding="tns:AgentsHttpGet">
-      <http:address location="http://t-referentiel.bas-rhin.fr/webservices/agents.asmx" />
+    <wsdl:port name="WsAgentsHttpGet" binding="tns:WsAgentsHttpGet">
+      <http:address location="http://referentiel.bas-rhin.fr/webservices/WsAgents.asmx" />
     </wsdl:port>
-    <wsdl:port name="AgentsHttpPost" binding="tns:AgentsHttpPost">
-      <http:address location="http://t-referentiel.bas-rhin.fr/webservices/agents.asmx" />
+    <wsdl:port name="WsAgentsHttpPost" binding="tns:WsAgentsHttpPost">
+      <http:address location="http://referentiel.bas-rhin.fr/webservices/WsAgents.asmx" />
     </wsdl:port>
   </wsdl:service>
 </wsdl:definitions>

+ 0 - 6
CD67.FicheCollege.Entity/Web References/WsAgents/agents.disco

@@ -1,6 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<discovery xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="http://schemas.xmlsoap.org/disco/">
-  <contractRef ref="http://t-referentiel.bas-rhin.fr/webservices/agents.asmx?wsdl" docRef="http://t-referentiel.bas-rhin.fr/webservices/agents.asmx" xmlns="http://schemas.xmlsoap.org/disco/scl/" />
-  <soap address="http://t-referentiel.bas-rhin.fr/webservices/agents.asmx" xmlns:q1="http://tempuri.org/" binding="q1:AgentsSoap" xmlns="http://schemas.xmlsoap.org/disco/soap/" />
-  <soap address="http://t-referentiel.bas-rhin.fr/webservices/agents.asmx" xmlns:q2="http://tempuri.org/" binding="q2:AgentsSoap12" xmlns="http://schemas.xmlsoap.org/disco/soap/" />
-</discovery>

+ 10 - 0
CD67.FicheCollege.Entity/Web References/WsExternes/Agent.datasource

@@ -0,0 +1,10 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+    This file is automatically generated by Visual Studio .Net. It is 
+    used to store generic object data source configuration information.  
+    Renaming the file extension or editing the content of this file may   
+    cause the file to be unrecognizable by the program.
+-->
+<GenericObjectDataSource DisplayName="Agent" Version="1.0" xmlns="urn:schemas-microsoft-com:xml-msdatasource">
+   <TypeInfo>CD67.FicheCollege.Entity.WsExternes.Agent, Web References.WsExternes.Reference.cs.dll, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null</TypeInfo>
+</GenericObjectDataSource>

+ 736 - 0
CD67.FicheCollege.Entity/Web References/WsExternes/Reference.cs

@@ -0,0 +1,736 @@
+//------------------------------------------------------------------------------
+// <auto-generated>
+//     Ce code a été généré par un outil.
+//     Version du runtime :4.0.30319.42000
+//
+//     Les modifications apportées à ce fichier peuvent provoquer un comportement incorrect et seront perdues si
+//     le code est régénéré.
+// </auto-generated>
+//------------------------------------------------------------------------------
+
+// 
+// Ce code source a été automatiquement généré par Microsoft.VSDesigner, Version 4.0.30319.42000.
+// 
+#pragma warning disable 1591
+
+namespace CD67.FicheCollege.Entity.WsExternes {
+    using System;
+    using System.Web.Services;
+    using System.Diagnostics;
+    using System.Web.Services.Protocols;
+    using System.Xml.Serialization;
+    using System.ComponentModel;
+    
+    
+    /// <remarks/>
+    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Web.Services", "4.6.1590.0")]
+    [System.Diagnostics.DebuggerStepThroughAttribute()]
+    [System.ComponentModel.DesignerCategoryAttribute("code")]
+    [System.Web.Services.WebServiceBindingAttribute(Name="WsExternesSoap", Namespace="http://tempuri.org/")]
+    public partial class WsExternes : System.Web.Services.Protocols.SoapHttpClientProtocol {
+        
+        private System.Threading.SendOrPostCallback GetByIdOperationCompleted;
+        
+        private System.Threading.SendOrPostCallback GetByIdsOperationCompleted;
+        
+        private System.Threading.SendOrPostCallback GetByOperationCompleted;
+        
+        private System.Threading.SendOrPostCallback GetAllOperationCompleted;
+        
+        private System.Threading.SendOrPostCallback GetAllSortedOperationCompleted;
+        
+        private System.Threading.SendOrPostCallback GetManyByOperationCompleted;
+        
+        private System.Threading.SendOrPostCallback GetManyBySortedOperationCompleted;
+        
+        private bool useDefaultCredentialsSetExplicitly;
+        
+        /// <remarks/>
+        public WsExternes() {
+            this.Url = global::CD67.FicheCollege.Entity.Properties.Settings.Default.CD67_FicheCollege_Entity_WsExternes_WsExternes;
+            if ((this.IsLocalFileSystemWebService(this.Url) == true)) {
+                this.UseDefaultCredentials = true;
+                this.useDefaultCredentialsSetExplicitly = false;
+            }
+            else {
+                this.useDefaultCredentialsSetExplicitly = true;
+            }
+        }
+        
+        public new string Url {
+            get {
+                return base.Url;
+            }
+            set {
+                if ((((this.IsLocalFileSystemWebService(base.Url) == true) 
+                            && (this.useDefaultCredentialsSetExplicitly == false)) 
+                            && (this.IsLocalFileSystemWebService(value) == false))) {
+                    base.UseDefaultCredentials = false;
+                }
+                base.Url = value;
+            }
+        }
+        
+        public new bool UseDefaultCredentials {
+            get {
+                return base.UseDefaultCredentials;
+            }
+            set {
+                base.UseDefaultCredentials = value;
+                this.useDefaultCredentialsSetExplicitly = true;
+            }
+        }
+        
+        /// <remarks/>
+        public event GetByIdCompletedEventHandler GetByIdCompleted;
+        
+        /// <remarks/>
+        public event GetByIdsCompletedEventHandler GetByIdsCompleted;
+        
+        /// <remarks/>
+        public event GetByCompletedEventHandler GetByCompleted;
+        
+        /// <remarks/>
+        public event GetAllCompletedEventHandler GetAllCompleted;
+        
+        /// <remarks/>
+        public event GetAllSortedCompletedEventHandler GetAllSortedCompleted;
+        
+        /// <remarks/>
+        public event GetManyByCompletedEventHandler GetManyByCompleted;
+        
+        /// <remarks/>
+        public event GetManyBySortedCompletedEventHandler GetManyBySortedCompleted;
+        
+        /// <remarks/>
+        [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://tempuri.org/GetById", RequestNamespace="http://tempuri.org/", ResponseNamespace="http://tempuri.org/", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
+        public Agent GetById(string Key) {
+            object[] results = this.Invoke("GetById", new object[] {
+                        Key});
+            return ((Agent)(results[0]));
+        }
+        
+        /// <remarks/>
+        public void GetByIdAsync(string Key) {
+            this.GetByIdAsync(Key, null);
+        }
+        
+        /// <remarks/>
+        public void GetByIdAsync(string Key, object userState) {
+            if ((this.GetByIdOperationCompleted == null)) {
+                this.GetByIdOperationCompleted = new System.Threading.SendOrPostCallback(this.OnGetByIdOperationCompleted);
+            }
+            this.InvokeAsync("GetById", new object[] {
+                        Key}, this.GetByIdOperationCompleted, userState);
+        }
+        
+        private void OnGetByIdOperationCompleted(object arg) {
+            if ((this.GetByIdCompleted != null)) {
+                System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg));
+                this.GetByIdCompleted(this, new GetByIdCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState));
+            }
+        }
+        
+        /// <remarks/>
+        [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://tempuri.org/GetByIds", RequestNamespace="http://tempuri.org/", ResponseNamespace="http://tempuri.org/", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
+        public Agent[] GetByIds(string[] Keys) {
+            object[] results = this.Invoke("GetByIds", new object[] {
+                        Keys});
+            return ((Agent[])(results[0]));
+        }
+        
+        /// <remarks/>
+        public void GetByIdsAsync(string[] Keys) {
+            this.GetByIdsAsync(Keys, null);
+        }
+        
+        /// <remarks/>
+        public void GetByIdsAsync(string[] Keys, object userState) {
+            if ((this.GetByIdsOperationCompleted == null)) {
+                this.GetByIdsOperationCompleted = new System.Threading.SendOrPostCallback(this.OnGetByIdsOperationCompleted);
+            }
+            this.InvokeAsync("GetByIds", new object[] {
+                        Keys}, this.GetByIdsOperationCompleted, userState);
+        }
+        
+        private void OnGetByIdsOperationCompleted(object arg) {
+            if ((this.GetByIdsCompleted != null)) {
+                System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg));
+                this.GetByIdsCompleted(this, new GetByIdsCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState));
+            }
+        }
+        
+        /// <remarks/>
+        [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://tempuri.org/GetBy", RequestNamespace="http://tempuri.org/", ResponseNamespace="http://tempuri.org/", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
+        public Agent GetBy(string FilterExpression) {
+            object[] results = this.Invoke("GetBy", new object[] {
+                        FilterExpression});
+            return ((Agent)(results[0]));
+        }
+        
+        /// <remarks/>
+        public void GetByAsync(string FilterExpression) {
+            this.GetByAsync(FilterExpression, null);
+        }
+        
+        /// <remarks/>
+        public void GetByAsync(string FilterExpression, object userState) {
+            if ((this.GetByOperationCompleted == null)) {
+                this.GetByOperationCompleted = new System.Threading.SendOrPostCallback(this.OnGetByOperationCompleted);
+            }
+            this.InvokeAsync("GetBy", new object[] {
+                        FilterExpression}, this.GetByOperationCompleted, userState);
+        }
+        
+        private void OnGetByOperationCompleted(object arg) {
+            if ((this.GetByCompleted != null)) {
+                System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg));
+                this.GetByCompleted(this, new GetByCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState));
+            }
+        }
+        
+        /// <remarks/>
+        [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://tempuri.org/GetAll", RequestNamespace="http://tempuri.org/", ResponseNamespace="http://tempuri.org/", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
+        public Agent[] GetAll() {
+            object[] results = this.Invoke("GetAll", new object[0]);
+            return ((Agent[])(results[0]));
+        }
+        
+        /// <remarks/>
+        public void GetAllAsync() {
+            this.GetAllAsync(null);
+        }
+        
+        /// <remarks/>
+        public void GetAllAsync(object userState) {
+            if ((this.GetAllOperationCompleted == null)) {
+                this.GetAllOperationCompleted = new System.Threading.SendOrPostCallback(this.OnGetAllOperationCompleted);
+            }
+            this.InvokeAsync("GetAll", new object[0], this.GetAllOperationCompleted, userState);
+        }
+        
+        private void OnGetAllOperationCompleted(object arg) {
+            if ((this.GetAllCompleted != null)) {
+                System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg));
+                this.GetAllCompleted(this, new GetAllCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState));
+            }
+        }
+        
+        /// <remarks/>
+        [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://tempuri.org/GetAllSorted", RequestNamespace="http://tempuri.org/", ResponseNamespace="http://tempuri.org/", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
+        public Agent[] GetAllSorted(string SortField, bool SortAscendant) {
+            object[] results = this.Invoke("GetAllSorted", new object[] {
+                        SortField,
+                        SortAscendant});
+            return ((Agent[])(results[0]));
+        }
+        
+        /// <remarks/>
+        public void GetAllSortedAsync(string SortField, bool SortAscendant) {
+            this.GetAllSortedAsync(SortField, SortAscendant, null);
+        }
+        
+        /// <remarks/>
+        public void GetAllSortedAsync(string SortField, bool SortAscendant, object userState) {
+            if ((this.GetAllSortedOperationCompleted == null)) {
+                this.GetAllSortedOperationCompleted = new System.Threading.SendOrPostCallback(this.OnGetAllSortedOperationCompleted);
+            }
+            this.InvokeAsync("GetAllSorted", new object[] {
+                        SortField,
+                        SortAscendant}, this.GetAllSortedOperationCompleted, userState);
+        }
+        
+        private void OnGetAllSortedOperationCompleted(object arg) {
+            if ((this.GetAllSortedCompleted != null)) {
+                System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg));
+                this.GetAllSortedCompleted(this, new GetAllSortedCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState));
+            }
+        }
+        
+        /// <remarks/>
+        [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://tempuri.org/GetManyBy", RequestNamespace="http://tempuri.org/", ResponseNamespace="http://tempuri.org/", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
+        public Agent[] GetManyBy(string FilterExpression) {
+            object[] results = this.Invoke("GetManyBy", new object[] {
+                        FilterExpression});
+            return ((Agent[])(results[0]));
+        }
+        
+        /// <remarks/>
+        public void GetManyByAsync(string FilterExpression) {
+            this.GetManyByAsync(FilterExpression, null);
+        }
+        
+        /// <remarks/>
+        public void GetManyByAsync(string FilterExpression, object userState) {
+            if ((this.GetManyByOperationCompleted == null)) {
+                this.GetManyByOperationCompleted = new System.Threading.SendOrPostCallback(this.OnGetManyByOperationCompleted);
+            }
+            this.InvokeAsync("GetManyBy", new object[] {
+                        FilterExpression}, this.GetManyByOperationCompleted, userState);
+        }
+        
+        private void OnGetManyByOperationCompleted(object arg) {
+            if ((this.GetManyByCompleted != null)) {
+                System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg));
+                this.GetManyByCompleted(this, new GetManyByCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState));
+            }
+        }
+        
+        /// <remarks/>
+        [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://tempuri.org/GetManyBySorted", RequestNamespace="http://tempuri.org/", ResponseNamespace="http://tempuri.org/", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
+        public Agent[] GetManyBySorted(string FilterExpression, string SortField, bool SortAscendant) {
+            object[] results = this.Invoke("GetManyBySorted", new object[] {
+                        FilterExpression,
+                        SortField,
+                        SortAscendant});
+            return ((Agent[])(results[0]));
+        }
+        
+        /// <remarks/>
+        public void GetManyBySortedAsync(string FilterExpression, string SortField, bool SortAscendant) {
+            this.GetManyBySortedAsync(FilterExpression, SortField, SortAscendant, null);
+        }
+        
+        /// <remarks/>
+        public void GetManyBySortedAsync(string FilterExpression, string SortField, bool SortAscendant, object userState) {
+            if ((this.GetManyBySortedOperationCompleted == null)) {
+                this.GetManyBySortedOperationCompleted = new System.Threading.SendOrPostCallback(this.OnGetManyBySortedOperationCompleted);
+            }
+            this.InvokeAsync("GetManyBySorted", new object[] {
+                        FilterExpression,
+                        SortField,
+                        SortAscendant}, this.GetManyBySortedOperationCompleted, userState);
+        }
+        
+        private void OnGetManyBySortedOperationCompleted(object arg) {
+            if ((this.GetManyBySortedCompleted != null)) {
+                System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg));
+                this.GetManyBySortedCompleted(this, new GetManyBySortedCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState));
+            }
+        }
+        
+        /// <remarks/>
+        public new void CancelAsync(object userState) {
+            base.CancelAsync(userState);
+        }
+        
+        private bool IsLocalFileSystemWebService(string url) {
+            if (((url == null) 
+                        || (url == string.Empty))) {
+                return false;
+            }
+            System.Uri wsUri = new System.Uri(url);
+            if (((wsUri.Port >= 1024) 
+                        && (string.Compare(wsUri.Host, "localHost", System.StringComparison.OrdinalIgnoreCase) == 0))) {
+                return true;
+            }
+            return false;
+        }
+    }
+    
+    /// <remarks/>
+    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Xml", "4.6.1590.0")]
+    [System.SerializableAttribute()]
+    [System.Diagnostics.DebuggerStepThroughAttribute()]
+    [System.ComponentModel.DesignerCategoryAttribute("code")]
+    [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://tempuri.org/")]
+    public partial class Agent {
+        
+        private string idField;
+        
+        private string loginField;
+        
+        private string nomField;
+        
+        private string prenomField;
+        
+        private string mailField;
+        
+        private string telephoneField;
+        
+        private System.Nullable<System.DateTime> expirationField;
+        
+        private AgentType typeIndividuField;
+        
+        private string organisationField;
+        
+        private System.Nullable<System.Guid> gUIDField;
+        
+        private byte[] sIDField;
+        
+        private string sIDasTextField;
+        
+        private string cheminField;
+        
+        private System.Nullable<bool> actifField;
+        
+        private System.Nullable<System.DateTime> disparitionField;
+        
+        private string employeeIDField;
+        
+        /// <remarks/>
+        public string Id {
+            get {
+                return this.idField;
+            }
+            set {
+                this.idField = value;
+            }
+        }
+        
+        /// <remarks/>
+        public string Login {
+            get {
+                return this.loginField;
+            }
+            set {
+                this.loginField = value;
+            }
+        }
+        
+        /// <remarks/>
+        public string Nom {
+            get {
+                return this.nomField;
+            }
+            set {
+                this.nomField = value;
+            }
+        }
+        
+        /// <remarks/>
+        public string Prenom {
+            get {
+                return this.prenomField;
+            }
+            set {
+                this.prenomField = value;
+            }
+        }
+        
+        /// <remarks/>
+        public string Mail {
+            get {
+                return this.mailField;
+            }
+            set {
+                this.mailField = value;
+            }
+        }
+        
+        /// <remarks/>
+        public string Telephone {
+            get {
+                return this.telephoneField;
+            }
+            set {
+                this.telephoneField = value;
+            }
+        }
+        
+        /// <remarks/>
+        [System.Xml.Serialization.XmlElementAttribute(IsNullable=true)]
+        public System.Nullable<System.DateTime> Expiration {
+            get {
+                return this.expirationField;
+            }
+            set {
+                this.expirationField = value;
+            }
+        }
+        
+        /// <remarks/>
+        public AgentType TypeIndividu {
+            get {
+                return this.typeIndividuField;
+            }
+            set {
+                this.typeIndividuField = value;
+            }
+        }
+        
+        /// <remarks/>
+        public string Organisation {
+            get {
+                return this.organisationField;
+            }
+            set {
+                this.organisationField = value;
+            }
+        }
+        
+        /// <remarks/>
+        [System.Xml.Serialization.XmlElementAttribute(IsNullable=true)]
+        public System.Nullable<System.Guid> GUID {
+            get {
+                return this.gUIDField;
+            }
+            set {
+                this.gUIDField = value;
+            }
+        }
+        
+        /// <remarks/>
+        [System.Xml.Serialization.XmlElementAttribute(DataType="base64Binary")]
+        public byte[] SID {
+            get {
+                return this.sIDField;
+            }
+            set {
+                this.sIDField = value;
+            }
+        }
+        
+        /// <remarks/>
+        public string SIDasText {
+            get {
+                return this.sIDasTextField;
+            }
+            set {
+                this.sIDasTextField = value;
+            }
+        }
+        
+        /// <remarks/>
+        public string Chemin {
+            get {
+                return this.cheminField;
+            }
+            set {
+                this.cheminField = value;
+            }
+        }
+        
+        /// <remarks/>
+        [System.Xml.Serialization.XmlElementAttribute(IsNullable=true)]
+        public System.Nullable<bool> Actif {
+            get {
+                return this.actifField;
+            }
+            set {
+                this.actifField = value;
+            }
+        }
+        
+        /// <remarks/>
+        [System.Xml.Serialization.XmlElementAttribute(IsNullable=true)]
+        public System.Nullable<System.DateTime> Disparition {
+            get {
+                return this.disparitionField;
+            }
+            set {
+                this.disparitionField = value;
+            }
+        }
+        
+        /// <remarks/>
+        public string EmployeeID {
+            get {
+                return this.employeeIDField;
+            }
+            set {
+                this.employeeIDField = value;
+            }
+        }
+    }
+    
+    /// <remarks/>
+    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Xml", "4.6.1590.0")]
+    [System.SerializableAttribute()]
+    [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://tempuri.org/")]
+    public enum AgentType {
+        
+        /// <remarks/>
+        Agent,
+        
+        /// <remarks/>
+        PartenaireProche,
+        
+        /// <remarks/>
+        Externe,
+    }
+    
+    /// <remarks/>
+    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Web.Services", "4.6.1590.0")]
+    public delegate void GetByIdCompletedEventHandler(object sender, GetByIdCompletedEventArgs e);
+    
+    /// <remarks/>
+    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Web.Services", "4.6.1590.0")]
+    [System.Diagnostics.DebuggerStepThroughAttribute()]
+    [System.ComponentModel.DesignerCategoryAttribute("code")]
+    public partial class GetByIdCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs {
+        
+        private object[] results;
+        
+        internal GetByIdCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) : 
+                base(exception, cancelled, userState) {
+            this.results = results;
+        }
+        
+        /// <remarks/>
+        public Agent Result {
+            get {
+                this.RaiseExceptionIfNecessary();
+                return ((Agent)(this.results[0]));
+            }
+        }
+    }
+    
+    /// <remarks/>
+    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Web.Services", "4.6.1590.0")]
+    public delegate void GetByIdsCompletedEventHandler(object sender, GetByIdsCompletedEventArgs e);
+    
+    /// <remarks/>
+    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Web.Services", "4.6.1590.0")]
+    [System.Diagnostics.DebuggerStepThroughAttribute()]
+    [System.ComponentModel.DesignerCategoryAttribute("code")]
+    public partial class GetByIdsCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs {
+        
+        private object[] results;
+        
+        internal GetByIdsCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) : 
+                base(exception, cancelled, userState) {
+            this.results = results;
+        }
+        
+        /// <remarks/>
+        public Agent[] Result {
+            get {
+                this.RaiseExceptionIfNecessary();
+                return ((Agent[])(this.results[0]));
+            }
+        }
+    }
+    
+    /// <remarks/>
+    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Web.Services", "4.6.1590.0")]
+    public delegate void GetByCompletedEventHandler(object sender, GetByCompletedEventArgs e);
+    
+    /// <remarks/>
+    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Web.Services", "4.6.1590.0")]
+    [System.Diagnostics.DebuggerStepThroughAttribute()]
+    [System.ComponentModel.DesignerCategoryAttribute("code")]
+    public partial class GetByCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs {
+        
+        private object[] results;
+        
+        internal GetByCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) : 
+                base(exception, cancelled, userState) {
+            this.results = results;
+        }
+        
+        /// <remarks/>
+        public Agent Result {
+            get {
+                this.RaiseExceptionIfNecessary();
+                return ((Agent)(this.results[0]));
+            }
+        }
+    }
+    
+    /// <remarks/>
+    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Web.Services", "4.6.1590.0")]
+    public delegate void GetAllCompletedEventHandler(object sender, GetAllCompletedEventArgs e);
+    
+    /// <remarks/>
+    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Web.Services", "4.6.1590.0")]
+    [System.Diagnostics.DebuggerStepThroughAttribute()]
+    [System.ComponentModel.DesignerCategoryAttribute("code")]
+    public partial class GetAllCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs {
+        
+        private object[] results;
+        
+        internal GetAllCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) : 
+                base(exception, cancelled, userState) {
+            this.results = results;
+        }
+        
+        /// <remarks/>
+        public Agent[] Result {
+            get {
+                this.RaiseExceptionIfNecessary();
+                return ((Agent[])(this.results[0]));
+            }
+        }
+    }
+    
+    /// <remarks/>
+    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Web.Services", "4.6.1590.0")]
+    public delegate void GetAllSortedCompletedEventHandler(object sender, GetAllSortedCompletedEventArgs e);
+    
+    /// <remarks/>
+    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Web.Services", "4.6.1590.0")]
+    [System.Diagnostics.DebuggerStepThroughAttribute()]
+    [System.ComponentModel.DesignerCategoryAttribute("code")]
+    public partial class GetAllSortedCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs {
+        
+        private object[] results;
+        
+        internal GetAllSortedCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) : 
+                base(exception, cancelled, userState) {
+            this.results = results;
+        }
+        
+        /// <remarks/>
+        public Agent[] Result {
+            get {
+                this.RaiseExceptionIfNecessary();
+                return ((Agent[])(this.results[0]));
+            }
+        }
+    }
+    
+    /// <remarks/>
+    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Web.Services", "4.6.1590.0")]
+    public delegate void GetManyByCompletedEventHandler(object sender, GetManyByCompletedEventArgs e);
+    
+    /// <remarks/>
+    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Web.Services", "4.6.1590.0")]
+    [System.Diagnostics.DebuggerStepThroughAttribute()]
+    [System.ComponentModel.DesignerCategoryAttribute("code")]
+    public partial class GetManyByCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs {
+        
+        private object[] results;
+        
+        internal GetManyByCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) : 
+                base(exception, cancelled, userState) {
+            this.results = results;
+        }
+        
+        /// <remarks/>
+        public Agent[] Result {
+            get {
+                this.RaiseExceptionIfNecessary();
+                return ((Agent[])(this.results[0]));
+            }
+        }
+    }
+    
+    /// <remarks/>
+    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Web.Services", "4.6.1590.0")]
+    public delegate void GetManyBySortedCompletedEventHandler(object sender, GetManyBySortedCompletedEventArgs e);
+    
+    /// <remarks/>
+    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Web.Services", "4.6.1590.0")]
+    [System.Diagnostics.DebuggerStepThroughAttribute()]
+    [System.ComponentModel.DesignerCategoryAttribute("code")]
+    public partial class GetManyBySortedCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs {
+        
+        private object[] results;
+        
+        internal GetManyBySortedCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) : 
+                base(exception, cancelled, userState) {
+            this.results = results;
+        }
+        
+        /// <remarks/>
+        public Agent[] Result {
+            get {
+                this.RaiseExceptionIfNecessary();
+                return ((Agent[])(this.results[0]));
+            }
+        }
+    }
+}
+
+#pragma warning restore 1591

+ 7 - 0
CD67.FicheCollege.Entity/Web References/WsExternes/Reference.map

@@ -0,0 +1,7 @@
+<?xml version="1.0" encoding="utf-8"?>
+<DiscoveryClientResultsFile xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
+  <Results>
+    <DiscoveryClientResult referenceType="System.Web.Services.Discovery.ContractReference" url="http://referentiel.bas-rhin.fr/webservices/WsExternes.asmx?wsdl" filename="WsExternes.wsdl" />
+    <DiscoveryClientResult referenceType="System.Web.Services.Discovery.DiscoveryDocumentReference" url="http://referentiel.bas-rhin.fr/webservices/WsExternes.asmx?disco" filename="WsExternes.disco" />
+  </Results>
+</DiscoveryClientResultsFile>

+ 6 - 0
CD67.FicheCollege.Entity/Web References/WsExternes/WsExternes.disco

@@ -0,0 +1,6 @@
+<?xml version="1.0" encoding="utf-8"?>
+<discovery xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="http://schemas.xmlsoap.org/disco/">
+  <contractRef ref="http://referentiel.bas-rhin.fr/webservices/WsExternes.asmx?wsdl" docRef="http://referentiel.bas-rhin.fr/webservices/WsExternes.asmx" xmlns="http://schemas.xmlsoap.org/disco/scl/" />
+  <soap address="http://referentiel.bas-rhin.fr/webservices/WsExternes.asmx" xmlns:q1="http://tempuri.org/" binding="q1:WsExternesSoap" xmlns="http://schemas.xmlsoap.org/disco/soap/" />
+  <soap address="http://referentiel.bas-rhin.fr/webservices/WsExternes.asmx" xmlns:q2="http://tempuri.org/" binding="q2:WsExternesSoap12" xmlns="http://schemas.xmlsoap.org/disco/soap/" />
+</discovery>

+ 609 - 0
CD67.FicheCollege.Entity/Web References/WsExternes/WsExternes.wsdl

@@ -0,0 +1,609 @@
+<?xml version="1.0" encoding="utf-8"?>
+<wsdl:definitions xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:mime="http://schemas.xmlsoap.org/wsdl/mime/" xmlns:tns="http://tempuri.org/" xmlns:s="http://www.w3.org/2001/XMLSchema" xmlns:s1="http://microsoft.com/wsdl/types/" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:tm="http://microsoft.com/wsdl/mime/textMatching/" xmlns:http="http://schemas.xmlsoap.org/wsdl/http/" xmlns:soap12="http://schemas.xmlsoap.org/wsdl/soap12/" targetNamespace="http://tempuri.org/" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">
+  <wsdl:types>
+    <s:schema elementFormDefault="qualified" targetNamespace="http://tempuri.org/">
+      <s:import namespace="http://microsoft.com/wsdl/types/" />
+      <s:element name="GetById">
+        <s:complexType>
+          <s:sequence>
+            <s:element minOccurs="0" maxOccurs="1" name="Key" type="s:string" />
+          </s:sequence>
+        </s:complexType>
+      </s:element>
+      <s:element name="GetByIdResponse">
+        <s:complexType>
+          <s:sequence>
+            <s:element minOccurs="0" maxOccurs="1" name="GetByIdResult" type="tns:Agent" />
+          </s:sequence>
+        </s:complexType>
+      </s:element>
+      <s:complexType name="Agent">
+        <s:sequence>
+          <s:element minOccurs="0" maxOccurs="1" name="Id" type="s:string" />
+          <s:element minOccurs="0" maxOccurs="1" name="Login" type="s:string" />
+          <s:element minOccurs="0" maxOccurs="1" name="Nom" type="s:string" />
+          <s:element minOccurs="0" maxOccurs="1" name="Prenom" type="s:string" />
+          <s:element minOccurs="0" maxOccurs="1" name="Mail" type="s:string" />
+          <s:element minOccurs="0" maxOccurs="1" name="Telephone" type="s:string" />
+          <s:element minOccurs="1" maxOccurs="1" name="Expiration" nillable="true" type="s:dateTime" />
+          <s:element minOccurs="1" maxOccurs="1" name="TypeIndividu" type="tns:AgentType" />
+          <s:element minOccurs="0" maxOccurs="1" name="Organisation" type="s:string" />
+          <s:element minOccurs="1" maxOccurs="1" name="GUID" nillable="true" type="s1:guid" />
+          <s:element minOccurs="0" maxOccurs="1" name="SID" type="s:base64Binary" />
+          <s:element minOccurs="0" maxOccurs="1" name="SIDasText" type="s:string" />
+          <s:element minOccurs="0" maxOccurs="1" name="Chemin" type="s:string" />
+          <s:element minOccurs="1" maxOccurs="1" name="Actif" nillable="true" type="s:boolean" />
+          <s:element minOccurs="1" maxOccurs="1" name="Disparition" nillable="true" type="s:dateTime" />
+          <s:element minOccurs="0" maxOccurs="1" name="EmployeeID" type="s:string" />
+        </s:sequence>
+      </s:complexType>
+      <s:simpleType name="AgentType">
+        <s:restriction base="s:string">
+          <s:enumeration value="Agent" />
+          <s:enumeration value="PartenaireProche" />
+          <s:enumeration value="Externe" />
+        </s:restriction>
+      </s:simpleType>
+      <s:element name="GetByIds">
+        <s:complexType>
+          <s:sequence>
+            <s:element minOccurs="0" maxOccurs="1" name="Keys" type="tns:ArrayOfString" />
+          </s:sequence>
+        </s:complexType>
+      </s:element>
+      <s:complexType name="ArrayOfString">
+        <s:sequence>
+          <s:element minOccurs="0" maxOccurs="unbounded" name="string" nillable="true" type="s:string" />
+        </s:sequence>
+      </s:complexType>
+      <s:element name="GetByIdsResponse">
+        <s:complexType>
+          <s:sequence>
+            <s:element minOccurs="0" maxOccurs="1" name="GetByIdsResult" type="tns:ArrayOfAgent" />
+          </s:sequence>
+        </s:complexType>
+      </s:element>
+      <s:complexType name="ArrayOfAgent">
+        <s:sequence>
+          <s:element minOccurs="0" maxOccurs="unbounded" name="Agent" nillable="true" type="tns:Agent" />
+        </s:sequence>
+      </s:complexType>
+      <s:element name="GetBy">
+        <s:complexType>
+          <s:sequence>
+            <s:element minOccurs="0" maxOccurs="1" name="FilterExpression" type="s:string" />
+          </s:sequence>
+        </s:complexType>
+      </s:element>
+      <s:element name="GetByResponse">
+        <s:complexType>
+          <s:sequence>
+            <s:element minOccurs="0" maxOccurs="1" name="GetByResult" type="tns:Agent" />
+          </s:sequence>
+        </s:complexType>
+      </s:element>
+      <s:element name="GetAll">
+        <s:complexType />
+      </s:element>
+      <s:element name="GetAllResponse">
+        <s:complexType>
+          <s:sequence>
+            <s:element minOccurs="0" maxOccurs="1" name="GetAllResult" type="tns:ArrayOfAgent" />
+          </s:sequence>
+        </s:complexType>
+      </s:element>
+      <s:element name="GetAllSorted">
+        <s:complexType>
+          <s:sequence>
+            <s:element minOccurs="0" maxOccurs="1" name="SortField" type="s:string" />
+            <s:element minOccurs="1" maxOccurs="1" name="SortAscendant" type="s:boolean" />
+          </s:sequence>
+        </s:complexType>
+      </s:element>
+      <s:element name="GetAllSortedResponse">
+        <s:complexType>
+          <s:sequence>
+            <s:element minOccurs="0" maxOccurs="1" name="GetAllSortedResult" type="tns:ArrayOfAgent" />
+          </s:sequence>
+        </s:complexType>
+      </s:element>
+      <s:element name="GetManyBy">
+        <s:complexType>
+          <s:sequence>
+            <s:element minOccurs="0" maxOccurs="1" name="FilterExpression" type="s:string" />
+          </s:sequence>
+        </s:complexType>
+      </s:element>
+      <s:element name="GetManyByResponse">
+        <s:complexType>
+          <s:sequence>
+            <s:element minOccurs="0" maxOccurs="1" name="GetManyByResult" type="tns:ArrayOfAgent" />
+          </s:sequence>
+        </s:complexType>
+      </s:element>
+      <s:element name="GetManyBySorted">
+        <s:complexType>
+          <s:sequence>
+            <s:element minOccurs="0" maxOccurs="1" name="FilterExpression" type="s:string" />
+            <s:element minOccurs="0" maxOccurs="1" name="SortField" type="s:string" />
+            <s:element minOccurs="1" maxOccurs="1" name="SortAscendant" type="s:boolean" />
+          </s:sequence>
+        </s:complexType>
+      </s:element>
+      <s:element name="GetManyBySortedResponse">
+        <s:complexType>
+          <s:sequence>
+            <s:element minOccurs="0" maxOccurs="1" name="GetManyBySortedResult" type="tns:ArrayOfAgent" />
+          </s:sequence>
+        </s:complexType>
+      </s:element>
+      <s:element name="Agent" nillable="true" type="tns:Agent" />
+      <s:element name="ArrayOfAgent" nillable="true" type="tns:ArrayOfAgent" />
+    </s:schema>
+    <s:schema elementFormDefault="qualified" targetNamespace="http://microsoft.com/wsdl/types/">
+      <s:simpleType name="guid">
+        <s:restriction base="s:string">
+          <s:pattern value="[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}" />
+        </s:restriction>
+      </s:simpleType>
+    </s:schema>
+  </wsdl:types>
+  <wsdl:message name="GetByIdSoapIn">
+    <wsdl:part name="parameters" element="tns:GetById" />
+  </wsdl:message>
+  <wsdl:message name="GetByIdSoapOut">
+    <wsdl:part name="parameters" element="tns:GetByIdResponse" />
+  </wsdl:message>
+  <wsdl:message name="GetByIdsSoapIn">
+    <wsdl:part name="parameters" element="tns:GetByIds" />
+  </wsdl:message>
+  <wsdl:message name="GetByIdsSoapOut">
+    <wsdl:part name="parameters" element="tns:GetByIdsResponse" />
+  </wsdl:message>
+  <wsdl:message name="GetBySoapIn">
+    <wsdl:part name="parameters" element="tns:GetBy" />
+  </wsdl:message>
+  <wsdl:message name="GetBySoapOut">
+    <wsdl:part name="parameters" element="tns:GetByResponse" />
+  </wsdl:message>
+  <wsdl:message name="GetAllSoapIn">
+    <wsdl:part name="parameters" element="tns:GetAll" />
+  </wsdl:message>
+  <wsdl:message name="GetAllSoapOut">
+    <wsdl:part name="parameters" element="tns:GetAllResponse" />
+  </wsdl:message>
+  <wsdl:message name="GetAllSortedSoapIn">
+    <wsdl:part name="parameters" element="tns:GetAllSorted" />
+  </wsdl:message>
+  <wsdl:message name="GetAllSortedSoapOut">
+    <wsdl:part name="parameters" element="tns:GetAllSortedResponse" />
+  </wsdl:message>
+  <wsdl:message name="GetManyBySoapIn">
+    <wsdl:part name="parameters" element="tns:GetManyBy" />
+  </wsdl:message>
+  <wsdl:message name="GetManyBySoapOut">
+    <wsdl:part name="parameters" element="tns:GetManyByResponse" />
+  </wsdl:message>
+  <wsdl:message name="GetManyBySortedSoapIn">
+    <wsdl:part name="parameters" element="tns:GetManyBySorted" />
+  </wsdl:message>
+  <wsdl:message name="GetManyBySortedSoapOut">
+    <wsdl:part name="parameters" element="tns:GetManyBySortedResponse" />
+  </wsdl:message>
+  <wsdl:message name="GetByIdHttpGetIn">
+    <wsdl:part name="Key" type="s:string" />
+  </wsdl:message>
+  <wsdl:message name="GetByIdHttpGetOut">
+    <wsdl:part name="Body" element="tns:Agent" />
+  </wsdl:message>
+  <wsdl:message name="GetByHttpGetIn">
+    <wsdl:part name="FilterExpression" type="s:string" />
+  </wsdl:message>
+  <wsdl:message name="GetByHttpGetOut">
+    <wsdl:part name="Body" element="tns:Agent" />
+  </wsdl:message>
+  <wsdl:message name="GetAllHttpGetIn" />
+  <wsdl:message name="GetAllHttpGetOut">
+    <wsdl:part name="Body" element="tns:ArrayOfAgent" />
+  </wsdl:message>
+  <wsdl:message name="GetAllSortedHttpGetIn">
+    <wsdl:part name="SortField" type="s:string" />
+    <wsdl:part name="SortAscendant" type="s:string" />
+  </wsdl:message>
+  <wsdl:message name="GetAllSortedHttpGetOut">
+    <wsdl:part name="Body" element="tns:ArrayOfAgent" />
+  </wsdl:message>
+  <wsdl:message name="GetManyByHttpGetIn">
+    <wsdl:part name="FilterExpression" type="s:string" />
+  </wsdl:message>
+  <wsdl:message name="GetManyByHttpGetOut">
+    <wsdl:part name="Body" element="tns:ArrayOfAgent" />
+  </wsdl:message>
+  <wsdl:message name="GetManyBySortedHttpGetIn">
+    <wsdl:part name="FilterExpression" type="s:string" />
+    <wsdl:part name="SortField" type="s:string" />
+    <wsdl:part name="SortAscendant" type="s:string" />
+  </wsdl:message>
+  <wsdl:message name="GetManyBySortedHttpGetOut">
+    <wsdl:part name="Body" element="tns:ArrayOfAgent" />
+  </wsdl:message>
+  <wsdl:message name="GetByIdHttpPostIn">
+    <wsdl:part name="Key" type="s:string" />
+  </wsdl:message>
+  <wsdl:message name="GetByIdHttpPostOut">
+    <wsdl:part name="Body" element="tns:Agent" />
+  </wsdl:message>
+  <wsdl:message name="GetByHttpPostIn">
+    <wsdl:part name="FilterExpression" type="s:string" />
+  </wsdl:message>
+  <wsdl:message name="GetByHttpPostOut">
+    <wsdl:part name="Body" element="tns:Agent" />
+  </wsdl:message>
+  <wsdl:message name="GetAllHttpPostIn" />
+  <wsdl:message name="GetAllHttpPostOut">
+    <wsdl:part name="Body" element="tns:ArrayOfAgent" />
+  </wsdl:message>
+  <wsdl:message name="GetAllSortedHttpPostIn">
+    <wsdl:part name="SortField" type="s:string" />
+    <wsdl:part name="SortAscendant" type="s:string" />
+  </wsdl:message>
+  <wsdl:message name="GetAllSortedHttpPostOut">
+    <wsdl:part name="Body" element="tns:ArrayOfAgent" />
+  </wsdl:message>
+  <wsdl:message name="GetManyByHttpPostIn">
+    <wsdl:part name="FilterExpression" type="s:string" />
+  </wsdl:message>
+  <wsdl:message name="GetManyByHttpPostOut">
+    <wsdl:part name="Body" element="tns:ArrayOfAgent" />
+  </wsdl:message>
+  <wsdl:message name="GetManyBySortedHttpPostIn">
+    <wsdl:part name="FilterExpression" type="s:string" />
+    <wsdl:part name="SortField" type="s:string" />
+    <wsdl:part name="SortAscendant" type="s:string" />
+  </wsdl:message>
+  <wsdl:message name="GetManyBySortedHttpPostOut">
+    <wsdl:part name="Body" element="tns:ArrayOfAgent" />
+  </wsdl:message>
+  <wsdl:portType name="WsExternesSoap">
+    <wsdl:operation name="GetById">
+      <wsdl:input message="tns:GetByIdSoapIn" />
+      <wsdl:output message="tns:GetByIdSoapOut" />
+    </wsdl:operation>
+    <wsdl:operation name="GetByIds">
+      <wsdl:input message="tns:GetByIdsSoapIn" />
+      <wsdl:output message="tns:GetByIdsSoapOut" />
+    </wsdl:operation>
+    <wsdl:operation name="GetBy">
+      <wsdl:input message="tns:GetBySoapIn" />
+      <wsdl:output message="tns:GetBySoapOut" />
+    </wsdl:operation>
+    <wsdl:operation name="GetAll">
+      <wsdl:input message="tns:GetAllSoapIn" />
+      <wsdl:output message="tns:GetAllSoapOut" />
+    </wsdl:operation>
+    <wsdl:operation name="GetAllSorted">
+      <wsdl:input message="tns:GetAllSortedSoapIn" />
+      <wsdl:output message="tns:GetAllSortedSoapOut" />
+    </wsdl:operation>
+    <wsdl:operation name="GetManyBy">
+      <wsdl:input message="tns:GetManyBySoapIn" />
+      <wsdl:output message="tns:GetManyBySoapOut" />
+    </wsdl:operation>
+    <wsdl:operation name="GetManyBySorted">
+      <wsdl:input message="tns:GetManyBySortedSoapIn" />
+      <wsdl:output message="tns:GetManyBySortedSoapOut" />
+    </wsdl:operation>
+  </wsdl:portType>
+  <wsdl:portType name="WsExternesHttpGet">
+    <wsdl:operation name="GetById">
+      <wsdl:input message="tns:GetByIdHttpGetIn" />
+      <wsdl:output message="tns:GetByIdHttpGetOut" />
+    </wsdl:operation>
+    <wsdl:operation name="GetBy">
+      <wsdl:input message="tns:GetByHttpGetIn" />
+      <wsdl:output message="tns:GetByHttpGetOut" />
+    </wsdl:operation>
+    <wsdl:operation name="GetAll">
+      <wsdl:input message="tns:GetAllHttpGetIn" />
+      <wsdl:output message="tns:GetAllHttpGetOut" />
+    </wsdl:operation>
+    <wsdl:operation name="GetAllSorted">
+      <wsdl:input message="tns:GetAllSortedHttpGetIn" />
+      <wsdl:output message="tns:GetAllSortedHttpGetOut" />
+    </wsdl:operation>
+    <wsdl:operation name="GetManyBy">
+      <wsdl:input message="tns:GetManyByHttpGetIn" />
+      <wsdl:output message="tns:GetManyByHttpGetOut" />
+    </wsdl:operation>
+    <wsdl:operation name="GetManyBySorted">
+      <wsdl:input message="tns:GetManyBySortedHttpGetIn" />
+      <wsdl:output message="tns:GetManyBySortedHttpGetOut" />
+    </wsdl:operation>
+  </wsdl:portType>
+  <wsdl:portType name="WsExternesHttpPost">
+    <wsdl:operation name="GetById">
+      <wsdl:input message="tns:GetByIdHttpPostIn" />
+      <wsdl:output message="tns:GetByIdHttpPostOut" />
+    </wsdl:operation>
+    <wsdl:operation name="GetBy">
+      <wsdl:input message="tns:GetByHttpPostIn" />
+      <wsdl:output message="tns:GetByHttpPostOut" />
+    </wsdl:operation>
+    <wsdl:operation name="GetAll">
+      <wsdl:input message="tns:GetAllHttpPostIn" />
+      <wsdl:output message="tns:GetAllHttpPostOut" />
+    </wsdl:operation>
+    <wsdl:operation name="GetAllSorted">
+      <wsdl:input message="tns:GetAllSortedHttpPostIn" />
+      <wsdl:output message="tns:GetAllSortedHttpPostOut" />
+    </wsdl:operation>
+    <wsdl:operation name="GetManyBy">
+      <wsdl:input message="tns:GetManyByHttpPostIn" />
+      <wsdl:output message="tns:GetManyByHttpPostOut" />
+    </wsdl:operation>
+    <wsdl:operation name="GetManyBySorted">
+      <wsdl:input message="tns:GetManyBySortedHttpPostIn" />
+      <wsdl:output message="tns:GetManyBySortedHttpPostOut" />
+    </wsdl:operation>
+  </wsdl:portType>
+  <wsdl:binding name="WsExternesSoap" type="tns:WsExternesSoap">
+    <soap:binding transport="http://schemas.xmlsoap.org/soap/http" />
+    <wsdl:operation name="GetById">
+      <soap:operation soapAction="http://tempuri.org/GetById" style="document" />
+      <wsdl:input>
+        <soap:body use="literal" />
+      </wsdl:input>
+      <wsdl:output>
+        <soap:body use="literal" />
+      </wsdl:output>
+    </wsdl:operation>
+    <wsdl:operation name="GetByIds">
+      <soap:operation soapAction="http://tempuri.org/GetByIds" style="document" />
+      <wsdl:input>
+        <soap:body use="literal" />
+      </wsdl:input>
+      <wsdl:output>
+        <soap:body use="literal" />
+      </wsdl:output>
+    </wsdl:operation>
+    <wsdl:operation name="GetBy">
+      <soap:operation soapAction="http://tempuri.org/GetBy" style="document" />
+      <wsdl:input>
+        <soap:body use="literal" />
+      </wsdl:input>
+      <wsdl:output>
+        <soap:body use="literal" />
+      </wsdl:output>
+    </wsdl:operation>
+    <wsdl:operation name="GetAll">
+      <soap:operation soapAction="http://tempuri.org/GetAll" style="document" />
+      <wsdl:input>
+        <soap:body use="literal" />
+      </wsdl:input>
+      <wsdl:output>
+        <soap:body use="literal" />
+      </wsdl:output>
+    </wsdl:operation>
+    <wsdl:operation name="GetAllSorted">
+      <soap:operation soapAction="http://tempuri.org/GetAllSorted" style="document" />
+      <wsdl:input>
+        <soap:body use="literal" />
+      </wsdl:input>
+      <wsdl:output>
+        <soap:body use="literal" />
+      </wsdl:output>
+    </wsdl:operation>
+    <wsdl:operation name="GetManyBy">
+      <soap:operation soapAction="http://tempuri.org/GetManyBy" style="document" />
+      <wsdl:input>
+        <soap:body use="literal" />
+      </wsdl:input>
+      <wsdl:output>
+        <soap:body use="literal" />
+      </wsdl:output>
+    </wsdl:operation>
+    <wsdl:operation name="GetManyBySorted">
+      <soap:operation soapAction="http://tempuri.org/GetManyBySorted" style="document" />
+      <wsdl:input>
+        <soap:body use="literal" />
+      </wsdl:input>
+      <wsdl:output>
+        <soap:body use="literal" />
+      </wsdl:output>
+    </wsdl:operation>
+  </wsdl:binding>
+  <wsdl:binding name="WsExternesSoap12" type="tns:WsExternesSoap">
+    <soap12:binding transport="http://schemas.xmlsoap.org/soap/http" />
+    <wsdl:operation name="GetById">
+      <soap12:operation soapAction="http://tempuri.org/GetById" style="document" />
+      <wsdl:input>
+        <soap12:body use="literal" />
+      </wsdl:input>
+      <wsdl:output>
+        <soap12:body use="literal" />
+      </wsdl:output>
+    </wsdl:operation>
+    <wsdl:operation name="GetByIds">
+      <soap12:operation soapAction="http://tempuri.org/GetByIds" style="document" />
+      <wsdl:input>
+        <soap12:body use="literal" />
+      </wsdl:input>
+      <wsdl:output>
+        <soap12:body use="literal" />
+      </wsdl:output>
+    </wsdl:operation>
+    <wsdl:operation name="GetBy">
+      <soap12:operation soapAction="http://tempuri.org/GetBy" style="document" />
+      <wsdl:input>
+        <soap12:body use="literal" />
+      </wsdl:input>
+      <wsdl:output>
+        <soap12:body use="literal" />
+      </wsdl:output>
+    </wsdl:operation>
+    <wsdl:operation name="GetAll">
+      <soap12:operation soapAction="http://tempuri.org/GetAll" style="document" />
+      <wsdl:input>
+        <soap12:body use="literal" />
+      </wsdl:input>
+      <wsdl:output>
+        <soap12:body use="literal" />
+      </wsdl:output>
+    </wsdl:operation>
+    <wsdl:operation name="GetAllSorted">
+      <soap12:operation soapAction="http://tempuri.org/GetAllSorted" style="document" />
+      <wsdl:input>
+        <soap12:body use="literal" />
+      </wsdl:input>
+      <wsdl:output>
+        <soap12:body use="literal" />
+      </wsdl:output>
+    </wsdl:operation>
+    <wsdl:operation name="GetManyBy">
+      <soap12:operation soapAction="http://tempuri.org/GetManyBy" style="document" />
+      <wsdl:input>
+        <soap12:body use="literal" />
+      </wsdl:input>
+      <wsdl:output>
+        <soap12:body use="literal" />
+      </wsdl:output>
+    </wsdl:operation>
+    <wsdl:operation name="GetManyBySorted">
+      <soap12:operation soapAction="http://tempuri.org/GetManyBySorted" style="document" />
+      <wsdl:input>
+        <soap12:body use="literal" />
+      </wsdl:input>
+      <wsdl:output>
+        <soap12:body use="literal" />
+      </wsdl:output>
+    </wsdl:operation>
+  </wsdl:binding>
+  <wsdl:binding name="WsExternesHttpGet" type="tns:WsExternesHttpGet">
+    <http:binding verb="GET" />
+    <wsdl:operation name="GetById">
+      <http:operation location="/GetById" />
+      <wsdl:input>
+        <http:urlEncoded />
+      </wsdl:input>
+      <wsdl:output>
+        <mime:mimeXml part="Body" />
+      </wsdl:output>
+    </wsdl:operation>
+    <wsdl:operation name="GetBy">
+      <http:operation location="/GetBy" />
+      <wsdl:input>
+        <http:urlEncoded />
+      </wsdl:input>
+      <wsdl:output>
+        <mime:mimeXml part="Body" />
+      </wsdl:output>
+    </wsdl:operation>
+    <wsdl:operation name="GetAll">
+      <http:operation location="/GetAll" />
+      <wsdl:input>
+        <http:urlEncoded />
+      </wsdl:input>
+      <wsdl:output>
+        <mime:mimeXml part="Body" />
+      </wsdl:output>
+    </wsdl:operation>
+    <wsdl:operation name="GetAllSorted">
+      <http:operation location="/GetAllSorted" />
+      <wsdl:input>
+        <http:urlEncoded />
+      </wsdl:input>
+      <wsdl:output>
+        <mime:mimeXml part="Body" />
+      </wsdl:output>
+    </wsdl:operation>
+    <wsdl:operation name="GetManyBy">
+      <http:operation location="/GetManyBy" />
+      <wsdl:input>
+        <http:urlEncoded />
+      </wsdl:input>
+      <wsdl:output>
+        <mime:mimeXml part="Body" />
+      </wsdl:output>
+    </wsdl:operation>
+    <wsdl:operation name="GetManyBySorted">
+      <http:operation location="/GetManyBySorted" />
+      <wsdl:input>
+        <http:urlEncoded />
+      </wsdl:input>
+      <wsdl:output>
+        <mime:mimeXml part="Body" />
+      </wsdl:output>
+    </wsdl:operation>
+  </wsdl:binding>
+  <wsdl:binding name="WsExternesHttpPost" type="tns:WsExternesHttpPost">
+    <http:binding verb="POST" />
+    <wsdl:operation name="GetById">
+      <http:operation location="/GetById" />
+      <wsdl:input>
+        <mime:content type="application/x-www-form-urlencoded" />
+      </wsdl:input>
+      <wsdl:output>
+        <mime:mimeXml part="Body" />
+      </wsdl:output>
+    </wsdl:operation>
+    <wsdl:operation name="GetBy">
+      <http:operation location="/GetBy" />
+      <wsdl:input>
+        <mime:content type="application/x-www-form-urlencoded" />
+      </wsdl:input>
+      <wsdl:output>
+        <mime:mimeXml part="Body" />
+      </wsdl:output>
+    </wsdl:operation>
+    <wsdl:operation name="GetAll">
+      <http:operation location="/GetAll" />
+      <wsdl:input>
+        <mime:content type="application/x-www-form-urlencoded" />
+      </wsdl:input>
+      <wsdl:output>
+        <mime:mimeXml part="Body" />
+      </wsdl:output>
+    </wsdl:operation>
+    <wsdl:operation name="GetAllSorted">
+      <http:operation location="/GetAllSorted" />
+      <wsdl:input>
+        <mime:content type="application/x-www-form-urlencoded" />
+      </wsdl:input>
+      <wsdl:output>
+        <mime:mimeXml part="Body" />
+      </wsdl:output>
+    </wsdl:operation>
+    <wsdl:operation name="GetManyBy">
+      <http:operation location="/GetManyBy" />
+      <wsdl:input>
+        <mime:content type="application/x-www-form-urlencoded" />
+      </wsdl:input>
+      <wsdl:output>
+        <mime:mimeXml part="Body" />
+      </wsdl:output>
+    </wsdl:operation>
+    <wsdl:operation name="GetManyBySorted">
+      <http:operation location="/GetManyBySorted" />
+      <wsdl:input>
+        <mime:content type="application/x-www-form-urlencoded" />
+      </wsdl:input>
+      <wsdl:output>
+        <mime:mimeXml part="Body" />
+      </wsdl:output>
+    </wsdl:operation>
+  </wsdl:binding>
+  <wsdl:service name="WsExternes">
+    <wsdl:port name="WsExternesSoap" binding="tns:WsExternesSoap">
+      <soap:address location="http://referentiel.bas-rhin.fr/webservices/WsExternes.asmx" />
+    </wsdl:port>
+    <wsdl:port name="WsExternesSoap12" binding="tns:WsExternesSoap12">
+      <soap12:address location="http://referentiel.bas-rhin.fr/webservices/WsExternes.asmx" />
+    </wsdl:port>
+    <wsdl:port name="WsExternesHttpGet" binding="tns:WsExternesHttpGet">
+      <http:address location="http://referentiel.bas-rhin.fr/webservices/WsExternes.asmx" />
+    </wsdl:port>
+    <wsdl:port name="WsExternesHttpPost" binding="tns:WsExternesHttpPost">
+      <http:address location="http://referentiel.bas-rhin.fr/webservices/WsExternes.asmx" />
+    </wsdl:port>
+  </wsdl:service>
+</wsdl:definitions>

+ 667 - 0
CD67.FicheCollege.Entity/Web References/WsTiers/Reference.cs

@@ -0,0 +1,667 @@
+//------------------------------------------------------------------------------
+// <auto-generated>
+//     Ce code a été généré par un outil.
+//     Version du runtime :4.0.30319.42000
+//
+//     Les modifications apportées à ce fichier peuvent provoquer un comportement incorrect et seront perdues si
+//     le code est régénéré.
+// </auto-generated>
+//------------------------------------------------------------------------------
+
+// 
+// Ce code source a été automatiquement généré par Microsoft.VSDesigner, Version 4.0.30319.42000.
+// 
+#pragma warning disable 1591
+
+namespace CD67.FicheCollege.Entity.WsTiers {
+    using System;
+    using System.Web.Services;
+    using System.Diagnostics;
+    using System.Web.Services.Protocols;
+    using System.Xml.Serialization;
+    using System.ComponentModel;
+    
+    
+    /// <remarks/>
+    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Web.Services", "4.6.1590.0")]
+    [System.Diagnostics.DebuggerStepThroughAttribute()]
+    [System.ComponentModel.DesignerCategoryAttribute("code")]
+    [System.Web.Services.WebServiceBindingAttribute(Name="WsTiersSoap", Namespace="http://tempuri.org/")]
+    public partial class WsTiers : System.Web.Services.Protocols.SoapHttpClientProtocol {
+        
+        private System.Threading.SendOrPostCallback GetByIdOperationCompleted;
+        
+        private System.Threading.SendOrPostCallback GetByIdsOperationCompleted;
+        
+        private System.Threading.SendOrPostCallback GetByOperationCompleted;
+        
+        private System.Threading.SendOrPostCallback GetAllOperationCompleted;
+        
+        private System.Threading.SendOrPostCallback GetAllSortedOperationCompleted;
+        
+        private System.Threading.SendOrPostCallback GetManyByOperationCompleted;
+        
+        private System.Threading.SendOrPostCallback GetManyBySortedOperationCompleted;
+        
+        private bool useDefaultCredentialsSetExplicitly;
+        
+        /// <remarks/>
+        public WsTiers() {
+            this.Url = global::CD67.FicheCollege.Entity.Properties.Settings.Default.CD67_FicheCollege_Entity_WsTiers_WsTiers;
+            if ((this.IsLocalFileSystemWebService(this.Url) == true)) {
+                this.UseDefaultCredentials = true;
+                this.useDefaultCredentialsSetExplicitly = false;
+            }
+            else {
+                this.useDefaultCredentialsSetExplicitly = true;
+            }
+        }
+        
+        public new string Url {
+            get {
+                return base.Url;
+            }
+            set {
+                if ((((this.IsLocalFileSystemWebService(base.Url) == true) 
+                            && (this.useDefaultCredentialsSetExplicitly == false)) 
+                            && (this.IsLocalFileSystemWebService(value) == false))) {
+                    base.UseDefaultCredentials = false;
+                }
+                base.Url = value;
+            }
+        }
+        
+        public new bool UseDefaultCredentials {
+            get {
+                return base.UseDefaultCredentials;
+            }
+            set {
+                base.UseDefaultCredentials = value;
+                this.useDefaultCredentialsSetExplicitly = true;
+            }
+        }
+        
+        /// <remarks/>
+        public event GetByIdCompletedEventHandler GetByIdCompleted;
+        
+        /// <remarks/>
+        public event GetByIdsCompletedEventHandler GetByIdsCompleted;
+        
+        /// <remarks/>
+        public event GetByCompletedEventHandler GetByCompleted;
+        
+        /// <remarks/>
+        public event GetAllCompletedEventHandler GetAllCompleted;
+        
+        /// <remarks/>
+        public event GetAllSortedCompletedEventHandler GetAllSortedCompleted;
+        
+        /// <remarks/>
+        public event GetManyByCompletedEventHandler GetManyByCompleted;
+        
+        /// <remarks/>
+        public event GetManyBySortedCompletedEventHandler GetManyBySortedCompleted;
+        
+        /// <remarks/>
+        [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://tempuri.org/GetById", RequestNamespace="http://tempuri.org/", ResponseNamespace="http://tempuri.org/", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
+        public Tiers GetById(string Key) {
+            object[] results = this.Invoke("GetById", new object[] {
+                        Key});
+            return ((Tiers)(results[0]));
+        }
+        
+        /// <remarks/>
+        public void GetByIdAsync(string Key) {
+            this.GetByIdAsync(Key, null);
+        }
+        
+        /// <remarks/>
+        public void GetByIdAsync(string Key, object userState) {
+            if ((this.GetByIdOperationCompleted == null)) {
+                this.GetByIdOperationCompleted = new System.Threading.SendOrPostCallback(this.OnGetByIdOperationCompleted);
+            }
+            this.InvokeAsync("GetById", new object[] {
+                        Key}, this.GetByIdOperationCompleted, userState);
+        }
+        
+        private void OnGetByIdOperationCompleted(object arg) {
+            if ((this.GetByIdCompleted != null)) {
+                System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg));
+                this.GetByIdCompleted(this, new GetByIdCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState));
+            }
+        }
+        
+        /// <remarks/>
+        [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://tempuri.org/GetByIds", RequestNamespace="http://tempuri.org/", ResponseNamespace="http://tempuri.org/", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
+        public Tiers[] GetByIds(string[] Keys) {
+            object[] results = this.Invoke("GetByIds", new object[] {
+                        Keys});
+            return ((Tiers[])(results[0]));
+        }
+        
+        /// <remarks/>
+        public void GetByIdsAsync(string[] Keys) {
+            this.GetByIdsAsync(Keys, null);
+        }
+        
+        /// <remarks/>
+        public void GetByIdsAsync(string[] Keys, object userState) {
+            if ((this.GetByIdsOperationCompleted == null)) {
+                this.GetByIdsOperationCompleted = new System.Threading.SendOrPostCallback(this.OnGetByIdsOperationCompleted);
+            }
+            this.InvokeAsync("GetByIds", new object[] {
+                        Keys}, this.GetByIdsOperationCompleted, userState);
+        }
+        
+        private void OnGetByIdsOperationCompleted(object arg) {
+            if ((this.GetByIdsCompleted != null)) {
+                System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg));
+                this.GetByIdsCompleted(this, new GetByIdsCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState));
+            }
+        }
+        
+        /// <remarks/>
+        [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://tempuri.org/GetBy", RequestNamespace="http://tempuri.org/", ResponseNamespace="http://tempuri.org/", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
+        public Tiers GetBy(string FilterExpression) {
+            object[] results = this.Invoke("GetBy", new object[] {
+                        FilterExpression});
+            return ((Tiers)(results[0]));
+        }
+        
+        /// <remarks/>
+        public void GetByAsync(string FilterExpression) {
+            this.GetByAsync(FilterExpression, null);
+        }
+        
+        /// <remarks/>
+        public void GetByAsync(string FilterExpression, object userState) {
+            if ((this.GetByOperationCompleted == null)) {
+                this.GetByOperationCompleted = new System.Threading.SendOrPostCallback(this.OnGetByOperationCompleted);
+            }
+            this.InvokeAsync("GetBy", new object[] {
+                        FilterExpression}, this.GetByOperationCompleted, userState);
+        }
+        
+        private void OnGetByOperationCompleted(object arg) {
+            if ((this.GetByCompleted != null)) {
+                System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg));
+                this.GetByCompleted(this, new GetByCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState));
+            }
+        }
+        
+        /// <remarks/>
+        [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://tempuri.org/GetAll", RequestNamespace="http://tempuri.org/", ResponseNamespace="http://tempuri.org/", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
+        public Tiers[] GetAll() {
+            object[] results = this.Invoke("GetAll", new object[0]);
+            return ((Tiers[])(results[0]));
+        }
+        
+        /// <remarks/>
+        public void GetAllAsync() {
+            this.GetAllAsync(null);
+        }
+        
+        /// <remarks/>
+        public void GetAllAsync(object userState) {
+            if ((this.GetAllOperationCompleted == null)) {
+                this.GetAllOperationCompleted = new System.Threading.SendOrPostCallback(this.OnGetAllOperationCompleted);
+            }
+            this.InvokeAsync("GetAll", new object[0], this.GetAllOperationCompleted, userState);
+        }
+        
+        private void OnGetAllOperationCompleted(object arg) {
+            if ((this.GetAllCompleted != null)) {
+                System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg));
+                this.GetAllCompleted(this, new GetAllCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState));
+            }
+        }
+        
+        /// <remarks/>
+        [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://tempuri.org/GetAllSorted", RequestNamespace="http://tempuri.org/", ResponseNamespace="http://tempuri.org/", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
+        public Tiers[] GetAllSorted(string SortField, bool SortAscendant) {
+            object[] results = this.Invoke("GetAllSorted", new object[] {
+                        SortField,
+                        SortAscendant});
+            return ((Tiers[])(results[0]));
+        }
+        
+        /// <remarks/>
+        public void GetAllSortedAsync(string SortField, bool SortAscendant) {
+            this.GetAllSortedAsync(SortField, SortAscendant, null);
+        }
+        
+        /// <remarks/>
+        public void GetAllSortedAsync(string SortField, bool SortAscendant, object userState) {
+            if ((this.GetAllSortedOperationCompleted == null)) {
+                this.GetAllSortedOperationCompleted = new System.Threading.SendOrPostCallback(this.OnGetAllSortedOperationCompleted);
+            }
+            this.InvokeAsync("GetAllSorted", new object[] {
+                        SortField,
+                        SortAscendant}, this.GetAllSortedOperationCompleted, userState);
+        }
+        
+        private void OnGetAllSortedOperationCompleted(object arg) {
+            if ((this.GetAllSortedCompleted != null)) {
+                System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg));
+                this.GetAllSortedCompleted(this, new GetAllSortedCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState));
+            }
+        }
+        
+        /// <remarks/>
+        [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://tempuri.org/GetManyBy", RequestNamespace="http://tempuri.org/", ResponseNamespace="http://tempuri.org/", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
+        public Tiers[] GetManyBy(string FilterExpression) {
+            object[] results = this.Invoke("GetManyBy", new object[] {
+                        FilterExpression});
+            return ((Tiers[])(results[0]));
+        }
+        
+        /// <remarks/>
+        public void GetManyByAsync(string FilterExpression) {
+            this.GetManyByAsync(FilterExpression, null);
+        }
+        
+        /// <remarks/>
+        public void GetManyByAsync(string FilterExpression, object userState) {
+            if ((this.GetManyByOperationCompleted == null)) {
+                this.GetManyByOperationCompleted = new System.Threading.SendOrPostCallback(this.OnGetManyByOperationCompleted);
+            }
+            this.InvokeAsync("GetManyBy", new object[] {
+                        FilterExpression}, this.GetManyByOperationCompleted, userState);
+        }
+        
+        private void OnGetManyByOperationCompleted(object arg) {
+            if ((this.GetManyByCompleted != null)) {
+                System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg));
+                this.GetManyByCompleted(this, new GetManyByCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState));
+            }
+        }
+        
+        /// <remarks/>
+        [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://tempuri.org/GetManyBySorted", RequestNamespace="http://tempuri.org/", ResponseNamespace="http://tempuri.org/", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
+        public Tiers[] GetManyBySorted(string FilterExpression, string SortField, bool SortAscendant) {
+            object[] results = this.Invoke("GetManyBySorted", new object[] {
+                        FilterExpression,
+                        SortField,
+                        SortAscendant});
+            return ((Tiers[])(results[0]));
+        }
+        
+        /// <remarks/>
+        public void GetManyBySortedAsync(string FilterExpression, string SortField, bool SortAscendant) {
+            this.GetManyBySortedAsync(FilterExpression, SortField, SortAscendant, null);
+        }
+        
+        /// <remarks/>
+        public void GetManyBySortedAsync(string FilterExpression, string SortField, bool SortAscendant, object userState) {
+            if ((this.GetManyBySortedOperationCompleted == null)) {
+                this.GetManyBySortedOperationCompleted = new System.Threading.SendOrPostCallback(this.OnGetManyBySortedOperationCompleted);
+            }
+            this.InvokeAsync("GetManyBySorted", new object[] {
+                        FilterExpression,
+                        SortField,
+                        SortAscendant}, this.GetManyBySortedOperationCompleted, userState);
+        }
+        
+        private void OnGetManyBySortedOperationCompleted(object arg) {
+            if ((this.GetManyBySortedCompleted != null)) {
+                System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg));
+                this.GetManyBySortedCompleted(this, new GetManyBySortedCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState));
+            }
+        }
+        
+        /// <remarks/>
+        public new void CancelAsync(object userState) {
+            base.CancelAsync(userState);
+        }
+        
+        private bool IsLocalFileSystemWebService(string url) {
+            if (((url == null) 
+                        || (url == string.Empty))) {
+                return false;
+            }
+            System.Uri wsUri = new System.Uri(url);
+            if (((wsUri.Port >= 1024) 
+                        && (string.Compare(wsUri.Host, "localHost", System.StringComparison.OrdinalIgnoreCase) == 0))) {
+                return true;
+            }
+            return false;
+        }
+    }
+    
+    /// <remarks/>
+    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Xml", "4.6.1590.0")]
+    [System.SerializableAttribute()]
+    [System.Diagnostics.DebuggerStepThroughAttribute()]
+    [System.ComponentModel.DesignerCategoryAttribute("code")]
+    [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://tempuri.org/")]
+    public partial class Tiers {
+        
+        private int idField;
+        
+        private string codeTiersField;
+        
+        private string codeOrganisationField;
+        
+        private string codeFamilleField;
+        
+        private string familleField;
+        
+        private string codeNatureJuridiqueField;
+        
+        private string natureJuridiqueField;
+        
+        private string codeCategorieField;
+        
+        private string sigleField;
+        
+        private string nomField;
+        
+        private string raisonSociale1Field;
+        
+        private string raisonSociale2Field;
+        
+        /// <remarks/>
+        public int Id {
+            get {
+                return this.idField;
+            }
+            set {
+                this.idField = value;
+            }
+        }
+        
+        /// <remarks/>
+        public string CodeTiers {
+            get {
+                return this.codeTiersField;
+            }
+            set {
+                this.codeTiersField = value;
+            }
+        }
+        
+        /// <remarks/>
+        public string CodeOrganisation {
+            get {
+                return this.codeOrganisationField;
+            }
+            set {
+                this.codeOrganisationField = value;
+            }
+        }
+        
+        /// <remarks/>
+        public string CodeFamille {
+            get {
+                return this.codeFamilleField;
+            }
+            set {
+                this.codeFamilleField = value;
+            }
+        }
+        
+        /// <remarks/>
+        public string Famille {
+            get {
+                return this.familleField;
+            }
+            set {
+                this.familleField = value;
+            }
+        }
+        
+        /// <remarks/>
+        public string CodeNatureJuridique {
+            get {
+                return this.codeNatureJuridiqueField;
+            }
+            set {
+                this.codeNatureJuridiqueField = value;
+            }
+        }
+        
+        /// <remarks/>
+        public string NatureJuridique {
+            get {
+                return this.natureJuridiqueField;
+            }
+            set {
+                this.natureJuridiqueField = value;
+            }
+        }
+        
+        /// <remarks/>
+        public string CodeCategorie {
+            get {
+                return this.codeCategorieField;
+            }
+            set {
+                this.codeCategorieField = value;
+            }
+        }
+        
+        /// <remarks/>
+        public string Sigle {
+            get {
+                return this.sigleField;
+            }
+            set {
+                this.sigleField = value;
+            }
+        }
+        
+        /// <remarks/>
+        public string Nom {
+            get {
+                return this.nomField;
+            }
+            set {
+                this.nomField = value;
+            }
+        }
+        
+        /// <remarks/>
+        public string RaisonSociale1 {
+            get {
+                return this.raisonSociale1Field;
+            }
+            set {
+                this.raisonSociale1Field = value;
+            }
+        }
+        
+        /// <remarks/>
+        public string RaisonSociale2 {
+            get {
+                return this.raisonSociale2Field;
+            }
+            set {
+                this.raisonSociale2Field = value;
+            }
+        }
+    }
+    
+    /// <remarks/>
+    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Web.Services", "4.6.1590.0")]
+    public delegate void GetByIdCompletedEventHandler(object sender, GetByIdCompletedEventArgs e);
+    
+    /// <remarks/>
+    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Web.Services", "4.6.1590.0")]
+    [System.Diagnostics.DebuggerStepThroughAttribute()]
+    [System.ComponentModel.DesignerCategoryAttribute("code")]
+    public partial class GetByIdCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs {
+        
+        private object[] results;
+        
+        internal GetByIdCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) : 
+                base(exception, cancelled, userState) {
+            this.results = results;
+        }
+        
+        /// <remarks/>
+        public Tiers Result {
+            get {
+                this.RaiseExceptionIfNecessary();
+                return ((Tiers)(this.results[0]));
+            }
+        }
+    }
+    
+    /// <remarks/>
+    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Web.Services", "4.6.1590.0")]
+    public delegate void GetByIdsCompletedEventHandler(object sender, GetByIdsCompletedEventArgs e);
+    
+    /// <remarks/>
+    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Web.Services", "4.6.1590.0")]
+    [System.Diagnostics.DebuggerStepThroughAttribute()]
+    [System.ComponentModel.DesignerCategoryAttribute("code")]
+    public partial class GetByIdsCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs {
+        
+        private object[] results;
+        
+        internal GetByIdsCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) : 
+                base(exception, cancelled, userState) {
+            this.results = results;
+        }
+        
+        /// <remarks/>
+        public Tiers[] Result {
+            get {
+                this.RaiseExceptionIfNecessary();
+                return ((Tiers[])(this.results[0]));
+            }
+        }
+    }
+    
+    /// <remarks/>
+    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Web.Services", "4.6.1590.0")]
+    public delegate void GetByCompletedEventHandler(object sender, GetByCompletedEventArgs e);
+    
+    /// <remarks/>
+    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Web.Services", "4.6.1590.0")]
+    [System.Diagnostics.DebuggerStepThroughAttribute()]
+    [System.ComponentModel.DesignerCategoryAttribute("code")]
+    public partial class GetByCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs {
+        
+        private object[] results;
+        
+        internal GetByCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) : 
+                base(exception, cancelled, userState) {
+            this.results = results;
+        }
+        
+        /// <remarks/>
+        public Tiers Result {
+            get {
+                this.RaiseExceptionIfNecessary();
+                return ((Tiers)(this.results[0]));
+            }
+        }
+    }
+    
+    /// <remarks/>
+    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Web.Services", "4.6.1590.0")]
+    public delegate void GetAllCompletedEventHandler(object sender, GetAllCompletedEventArgs e);
+    
+    /// <remarks/>
+    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Web.Services", "4.6.1590.0")]
+    [System.Diagnostics.DebuggerStepThroughAttribute()]
+    [System.ComponentModel.DesignerCategoryAttribute("code")]
+    public partial class GetAllCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs {
+        
+        private object[] results;
+        
+        internal GetAllCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) : 
+                base(exception, cancelled, userState) {
+            this.results = results;
+        }
+        
+        /// <remarks/>
+        public Tiers[] Result {
+            get {
+                this.RaiseExceptionIfNecessary();
+                return ((Tiers[])(this.results[0]));
+            }
+        }
+    }
+    
+    /// <remarks/>
+    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Web.Services", "4.6.1590.0")]
+    public delegate void GetAllSortedCompletedEventHandler(object sender, GetAllSortedCompletedEventArgs e);
+    
+    /// <remarks/>
+    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Web.Services", "4.6.1590.0")]
+    [System.Diagnostics.DebuggerStepThroughAttribute()]
+    [System.ComponentModel.DesignerCategoryAttribute("code")]
+    public partial class GetAllSortedCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs {
+        
+        private object[] results;
+        
+        internal GetAllSortedCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) : 
+                base(exception, cancelled, userState) {
+            this.results = results;
+        }
+        
+        /// <remarks/>
+        public Tiers[] Result {
+            get {
+                this.RaiseExceptionIfNecessary();
+                return ((Tiers[])(this.results[0]));
+            }
+        }
+    }
+    
+    /// <remarks/>
+    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Web.Services", "4.6.1590.0")]
+    public delegate void GetManyByCompletedEventHandler(object sender, GetManyByCompletedEventArgs e);
+    
+    /// <remarks/>
+    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Web.Services", "4.6.1590.0")]
+    [System.Diagnostics.DebuggerStepThroughAttribute()]
+    [System.ComponentModel.DesignerCategoryAttribute("code")]
+    public partial class GetManyByCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs {
+        
+        private object[] results;
+        
+        internal GetManyByCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) : 
+                base(exception, cancelled, userState) {
+            this.results = results;
+        }
+        
+        /// <remarks/>
+        public Tiers[] Result {
+            get {
+                this.RaiseExceptionIfNecessary();
+                return ((Tiers[])(this.results[0]));
+            }
+        }
+    }
+    
+    /// <remarks/>
+    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Web.Services", "4.6.1590.0")]
+    public delegate void GetManyBySortedCompletedEventHandler(object sender, GetManyBySortedCompletedEventArgs e);
+    
+    /// <remarks/>
+    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Web.Services", "4.6.1590.0")]
+    [System.Diagnostics.DebuggerStepThroughAttribute()]
+    [System.ComponentModel.DesignerCategoryAttribute("code")]
+    public partial class GetManyBySortedCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs {
+        
+        private object[] results;
+        
+        internal GetManyBySortedCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) : 
+                base(exception, cancelled, userState) {
+            this.results = results;
+        }
+        
+        /// <remarks/>
+        public Tiers[] Result {
+            get {
+                this.RaiseExceptionIfNecessary();
+                return ((Tiers[])(this.results[0]));
+            }
+        }
+    }
+}
+
+#pragma warning restore 1591

+ 7 - 0
CD67.FicheCollege.Entity/Web References/WsTiers/Reference.map

@@ -0,0 +1,7 @@
+<?xml version="1.0" encoding="utf-8"?>
+<DiscoveryClientResultsFile xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
+  <Results>
+    <DiscoveryClientResult referenceType="System.Web.Services.Discovery.ContractReference" url="http://referentiel.bas-rhin.fr/webservices/WsTiers.asmx?wsdl" filename="WsTiers.wsdl" />
+    <DiscoveryClientResult referenceType="System.Web.Services.Discovery.DiscoveryDocumentReference" url="http://referentiel.bas-rhin.fr/webservices/WsTiers.asmx?disco" filename="WsTiers.disco" />
+  </Results>
+</DiscoveryClientResultsFile>

+ 10 - 0
CD67.FicheCollege.Entity/Web References/WsTiers/Tiers.datasource

@@ -0,0 +1,10 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+    This file is automatically generated by Visual Studio .Net. It is 
+    used to store generic object data source configuration information.  
+    Renaming the file extension or editing the content of this file may   
+    cause the file to be unrecognizable by the program.
+-->
+<GenericObjectDataSource DisplayName="Tiers" Version="1.0" xmlns="urn:schemas-microsoft-com:xml-msdatasource">
+   <TypeInfo>CD67.FicheCollege.Entity.WsTiers.Tiers, Web References.WsTiers.Reference.cs.dll, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null</TypeInfo>
+</GenericObjectDataSource>

+ 6 - 0
CD67.FicheCollege.Entity/Web References/WsTiers/WsTiers.disco

@@ -0,0 +1,6 @@
+<?xml version="1.0" encoding="utf-8"?>
+<discovery xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="http://schemas.xmlsoap.org/disco/">
+  <contractRef ref="http://referentiel.bas-rhin.fr/webservices/WsTiers.asmx?wsdl" docRef="http://referentiel.bas-rhin.fr/webservices/WsTiers.asmx" xmlns="http://schemas.xmlsoap.org/disco/scl/" />
+  <soap address="http://referentiel.bas-rhin.fr/webservices/WsTiers.asmx" xmlns:q1="http://tempuri.org/" binding="q1:WsTiersSoap" xmlns="http://schemas.xmlsoap.org/disco/soap/" />
+  <soap address="http://referentiel.bas-rhin.fr/webservices/WsTiers.asmx" xmlns:q2="http://tempuri.org/" binding="q2:WsTiersSoap12" xmlns="http://schemas.xmlsoap.org/disco/soap/" />
+</discovery>

+ 590 - 0
CD67.FicheCollege.Entity/Web References/WsTiers/WsTiers.wsdl

@@ -0,0 +1,590 @@
+<?xml version="1.0" encoding="utf-8"?>
+<wsdl:definitions xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:mime="http://schemas.xmlsoap.org/wsdl/mime/" xmlns:tns="http://tempuri.org/" xmlns:s="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:tm="http://microsoft.com/wsdl/mime/textMatching/" xmlns:http="http://schemas.xmlsoap.org/wsdl/http/" xmlns:soap12="http://schemas.xmlsoap.org/wsdl/soap12/" targetNamespace="http://tempuri.org/" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">
+  <wsdl:types>
+    <s:schema elementFormDefault="qualified" targetNamespace="http://tempuri.org/">
+      <s:element name="GetById">
+        <s:complexType>
+          <s:sequence>
+            <s:element minOccurs="0" maxOccurs="1" name="Key" type="s:string" />
+          </s:sequence>
+        </s:complexType>
+      </s:element>
+      <s:element name="GetByIdResponse">
+        <s:complexType>
+          <s:sequence>
+            <s:element minOccurs="0" maxOccurs="1" name="GetByIdResult" type="tns:Tiers" />
+          </s:sequence>
+        </s:complexType>
+      </s:element>
+      <s:complexType name="Tiers">
+        <s:sequence>
+          <s:element minOccurs="1" maxOccurs="1" name="Id" type="s:int" />
+          <s:element minOccurs="0" maxOccurs="1" name="CodeTiers" type="s:string" />
+          <s:element minOccurs="0" maxOccurs="1" name="CodeOrganisation" type="s:string" />
+          <s:element minOccurs="0" maxOccurs="1" name="CodeFamille" type="s:string" />
+          <s:element minOccurs="0" maxOccurs="1" name="Famille" type="s:string" />
+          <s:element minOccurs="0" maxOccurs="1" name="CodeNatureJuridique" type="s:string" />
+          <s:element minOccurs="0" maxOccurs="1" name="NatureJuridique" type="s:string" />
+          <s:element minOccurs="0" maxOccurs="1" name="CodeCategorie" type="s:string" />
+          <s:element minOccurs="0" maxOccurs="1" name="Sigle" type="s:string" />
+          <s:element minOccurs="0" maxOccurs="1" name="Nom" type="s:string" />
+          <s:element minOccurs="0" maxOccurs="1" name="RaisonSociale1" type="s:string" />
+          <s:element minOccurs="0" maxOccurs="1" name="RaisonSociale2" type="s:string" />
+        </s:sequence>
+      </s:complexType>
+      <s:element name="GetByIds">
+        <s:complexType>
+          <s:sequence>
+            <s:element minOccurs="0" maxOccurs="1" name="Keys" type="tns:ArrayOfString" />
+          </s:sequence>
+        </s:complexType>
+      </s:element>
+      <s:complexType name="ArrayOfString">
+        <s:sequence>
+          <s:element minOccurs="0" maxOccurs="unbounded" name="string" nillable="true" type="s:string" />
+        </s:sequence>
+      </s:complexType>
+      <s:element name="GetByIdsResponse">
+        <s:complexType>
+          <s:sequence>
+            <s:element minOccurs="0" maxOccurs="1" name="GetByIdsResult" type="tns:ArrayOfTiers" />
+          </s:sequence>
+        </s:complexType>
+      </s:element>
+      <s:complexType name="ArrayOfTiers">
+        <s:sequence>
+          <s:element minOccurs="0" maxOccurs="unbounded" name="Tiers" nillable="true" type="tns:Tiers" />
+        </s:sequence>
+      </s:complexType>
+      <s:element name="GetBy">
+        <s:complexType>
+          <s:sequence>
+            <s:element minOccurs="0" maxOccurs="1" name="FilterExpression" type="s:string" />
+          </s:sequence>
+        </s:complexType>
+      </s:element>
+      <s:element name="GetByResponse">
+        <s:complexType>
+          <s:sequence>
+            <s:element minOccurs="0" maxOccurs="1" name="GetByResult" type="tns:Tiers" />
+          </s:sequence>
+        </s:complexType>
+      </s:element>
+      <s:element name="GetAll">
+        <s:complexType />
+      </s:element>
+      <s:element name="GetAllResponse">
+        <s:complexType>
+          <s:sequence>
+            <s:element minOccurs="0" maxOccurs="1" name="GetAllResult" type="tns:ArrayOfTiers" />
+          </s:sequence>
+        </s:complexType>
+      </s:element>
+      <s:element name="GetAllSorted">
+        <s:complexType>
+          <s:sequence>
+            <s:element minOccurs="0" maxOccurs="1" name="SortField" type="s:string" />
+            <s:element minOccurs="1" maxOccurs="1" name="SortAscendant" type="s:boolean" />
+          </s:sequence>
+        </s:complexType>
+      </s:element>
+      <s:element name="GetAllSortedResponse">
+        <s:complexType>
+          <s:sequence>
+            <s:element minOccurs="0" maxOccurs="1" name="GetAllSortedResult" type="tns:ArrayOfTiers" />
+          </s:sequence>
+        </s:complexType>
+      </s:element>
+      <s:element name="GetManyBy">
+        <s:complexType>
+          <s:sequence>
+            <s:element minOccurs="0" maxOccurs="1" name="FilterExpression" type="s:string" />
+          </s:sequence>
+        </s:complexType>
+      </s:element>
+      <s:element name="GetManyByResponse">
+        <s:complexType>
+          <s:sequence>
+            <s:element minOccurs="0" maxOccurs="1" name="GetManyByResult" type="tns:ArrayOfTiers" />
+          </s:sequence>
+        </s:complexType>
+      </s:element>
+      <s:element name="GetManyBySorted">
+        <s:complexType>
+          <s:sequence>
+            <s:element minOccurs="0" maxOccurs="1" name="FilterExpression" type="s:string" />
+            <s:element minOccurs="0" maxOccurs="1" name="SortField" type="s:string" />
+            <s:element minOccurs="1" maxOccurs="1" name="SortAscendant" type="s:boolean" />
+          </s:sequence>
+        </s:complexType>
+      </s:element>
+      <s:element name="GetManyBySortedResponse">
+        <s:complexType>
+          <s:sequence>
+            <s:element minOccurs="0" maxOccurs="1" name="GetManyBySortedResult" type="tns:ArrayOfTiers" />
+          </s:sequence>
+        </s:complexType>
+      </s:element>
+      <s:element name="Tiers" nillable="true" type="tns:Tiers" />
+      <s:element name="ArrayOfTiers" nillable="true" type="tns:ArrayOfTiers" />
+    </s:schema>
+  </wsdl:types>
+  <wsdl:message name="GetByIdSoapIn">
+    <wsdl:part name="parameters" element="tns:GetById" />
+  </wsdl:message>
+  <wsdl:message name="GetByIdSoapOut">
+    <wsdl:part name="parameters" element="tns:GetByIdResponse" />
+  </wsdl:message>
+  <wsdl:message name="GetByIdsSoapIn">
+    <wsdl:part name="parameters" element="tns:GetByIds" />
+  </wsdl:message>
+  <wsdl:message name="GetByIdsSoapOut">
+    <wsdl:part name="parameters" element="tns:GetByIdsResponse" />
+  </wsdl:message>
+  <wsdl:message name="GetBySoapIn">
+    <wsdl:part name="parameters" element="tns:GetBy" />
+  </wsdl:message>
+  <wsdl:message name="GetBySoapOut">
+    <wsdl:part name="parameters" element="tns:GetByResponse" />
+  </wsdl:message>
+  <wsdl:message name="GetAllSoapIn">
+    <wsdl:part name="parameters" element="tns:GetAll" />
+  </wsdl:message>
+  <wsdl:message name="GetAllSoapOut">
+    <wsdl:part name="parameters" element="tns:GetAllResponse" />
+  </wsdl:message>
+  <wsdl:message name="GetAllSortedSoapIn">
+    <wsdl:part name="parameters" element="tns:GetAllSorted" />
+  </wsdl:message>
+  <wsdl:message name="GetAllSortedSoapOut">
+    <wsdl:part name="parameters" element="tns:GetAllSortedResponse" />
+  </wsdl:message>
+  <wsdl:message name="GetManyBySoapIn">
+    <wsdl:part name="parameters" element="tns:GetManyBy" />
+  </wsdl:message>
+  <wsdl:message name="GetManyBySoapOut">
+    <wsdl:part name="parameters" element="tns:GetManyByResponse" />
+  </wsdl:message>
+  <wsdl:message name="GetManyBySortedSoapIn">
+    <wsdl:part name="parameters" element="tns:GetManyBySorted" />
+  </wsdl:message>
+  <wsdl:message name="GetManyBySortedSoapOut">
+    <wsdl:part name="parameters" element="tns:GetManyBySortedResponse" />
+  </wsdl:message>
+  <wsdl:message name="GetByIdHttpGetIn">
+    <wsdl:part name="Key" type="s:string" />
+  </wsdl:message>
+  <wsdl:message name="GetByIdHttpGetOut">
+    <wsdl:part name="Body" element="tns:Tiers" />
+  </wsdl:message>
+  <wsdl:message name="GetByHttpGetIn">
+    <wsdl:part name="FilterExpression" type="s:string" />
+  </wsdl:message>
+  <wsdl:message name="GetByHttpGetOut">
+    <wsdl:part name="Body" element="tns:Tiers" />
+  </wsdl:message>
+  <wsdl:message name="GetAllHttpGetIn" />
+  <wsdl:message name="GetAllHttpGetOut">
+    <wsdl:part name="Body" element="tns:ArrayOfTiers" />
+  </wsdl:message>
+  <wsdl:message name="GetAllSortedHttpGetIn">
+    <wsdl:part name="SortField" type="s:string" />
+    <wsdl:part name="SortAscendant" type="s:string" />
+  </wsdl:message>
+  <wsdl:message name="GetAllSortedHttpGetOut">
+    <wsdl:part name="Body" element="tns:ArrayOfTiers" />
+  </wsdl:message>
+  <wsdl:message name="GetManyByHttpGetIn">
+    <wsdl:part name="FilterExpression" type="s:string" />
+  </wsdl:message>
+  <wsdl:message name="GetManyByHttpGetOut">
+    <wsdl:part name="Body" element="tns:ArrayOfTiers" />
+  </wsdl:message>
+  <wsdl:message name="GetManyBySortedHttpGetIn">
+    <wsdl:part name="FilterExpression" type="s:string" />
+    <wsdl:part name="SortField" type="s:string" />
+    <wsdl:part name="SortAscendant" type="s:string" />
+  </wsdl:message>
+  <wsdl:message name="GetManyBySortedHttpGetOut">
+    <wsdl:part name="Body" element="tns:ArrayOfTiers" />
+  </wsdl:message>
+  <wsdl:message name="GetByIdHttpPostIn">
+    <wsdl:part name="Key" type="s:string" />
+  </wsdl:message>
+  <wsdl:message name="GetByIdHttpPostOut">
+    <wsdl:part name="Body" element="tns:Tiers" />
+  </wsdl:message>
+  <wsdl:message name="GetByHttpPostIn">
+    <wsdl:part name="FilterExpression" type="s:string" />
+  </wsdl:message>
+  <wsdl:message name="GetByHttpPostOut">
+    <wsdl:part name="Body" element="tns:Tiers" />
+  </wsdl:message>
+  <wsdl:message name="GetAllHttpPostIn" />
+  <wsdl:message name="GetAllHttpPostOut">
+    <wsdl:part name="Body" element="tns:ArrayOfTiers" />
+  </wsdl:message>
+  <wsdl:message name="GetAllSortedHttpPostIn">
+    <wsdl:part name="SortField" type="s:string" />
+    <wsdl:part name="SortAscendant" type="s:string" />
+  </wsdl:message>
+  <wsdl:message name="GetAllSortedHttpPostOut">
+    <wsdl:part name="Body" element="tns:ArrayOfTiers" />
+  </wsdl:message>
+  <wsdl:message name="GetManyByHttpPostIn">
+    <wsdl:part name="FilterExpression" type="s:string" />
+  </wsdl:message>
+  <wsdl:message name="GetManyByHttpPostOut">
+    <wsdl:part name="Body" element="tns:ArrayOfTiers" />
+  </wsdl:message>
+  <wsdl:message name="GetManyBySortedHttpPostIn">
+    <wsdl:part name="FilterExpression" type="s:string" />
+    <wsdl:part name="SortField" type="s:string" />
+    <wsdl:part name="SortAscendant" type="s:string" />
+  </wsdl:message>
+  <wsdl:message name="GetManyBySortedHttpPostOut">
+    <wsdl:part name="Body" element="tns:ArrayOfTiers" />
+  </wsdl:message>
+  <wsdl:portType name="WsTiersSoap">
+    <wsdl:operation name="GetById">
+      <wsdl:input message="tns:GetByIdSoapIn" />
+      <wsdl:output message="tns:GetByIdSoapOut" />
+    </wsdl:operation>
+    <wsdl:operation name="GetByIds">
+      <wsdl:input message="tns:GetByIdsSoapIn" />
+      <wsdl:output message="tns:GetByIdsSoapOut" />
+    </wsdl:operation>
+    <wsdl:operation name="GetBy">
+      <wsdl:input message="tns:GetBySoapIn" />
+      <wsdl:output message="tns:GetBySoapOut" />
+    </wsdl:operation>
+    <wsdl:operation name="GetAll">
+      <wsdl:input message="tns:GetAllSoapIn" />
+      <wsdl:output message="tns:GetAllSoapOut" />
+    </wsdl:operation>
+    <wsdl:operation name="GetAllSorted">
+      <wsdl:input message="tns:GetAllSortedSoapIn" />
+      <wsdl:output message="tns:GetAllSortedSoapOut" />
+    </wsdl:operation>
+    <wsdl:operation name="GetManyBy">
+      <wsdl:input message="tns:GetManyBySoapIn" />
+      <wsdl:output message="tns:GetManyBySoapOut" />
+    </wsdl:operation>
+    <wsdl:operation name="GetManyBySorted">
+      <wsdl:input message="tns:GetManyBySortedSoapIn" />
+      <wsdl:output message="tns:GetManyBySortedSoapOut" />
+    </wsdl:operation>
+  </wsdl:portType>
+  <wsdl:portType name="WsTiersHttpGet">
+    <wsdl:operation name="GetById">
+      <wsdl:input message="tns:GetByIdHttpGetIn" />
+      <wsdl:output message="tns:GetByIdHttpGetOut" />
+    </wsdl:operation>
+    <wsdl:operation name="GetBy">
+      <wsdl:input message="tns:GetByHttpGetIn" />
+      <wsdl:output message="tns:GetByHttpGetOut" />
+    </wsdl:operation>
+    <wsdl:operation name="GetAll">
+      <wsdl:input message="tns:GetAllHttpGetIn" />
+      <wsdl:output message="tns:GetAllHttpGetOut" />
+    </wsdl:operation>
+    <wsdl:operation name="GetAllSorted">
+      <wsdl:input message="tns:GetAllSortedHttpGetIn" />
+      <wsdl:output message="tns:GetAllSortedHttpGetOut" />
+    </wsdl:operation>
+    <wsdl:operation name="GetManyBy">
+      <wsdl:input message="tns:GetManyByHttpGetIn" />
+      <wsdl:output message="tns:GetManyByHttpGetOut" />
+    </wsdl:operation>
+    <wsdl:operation name="GetManyBySorted">
+      <wsdl:input message="tns:GetManyBySortedHttpGetIn" />
+      <wsdl:output message="tns:GetManyBySortedHttpGetOut" />
+    </wsdl:operation>
+  </wsdl:portType>
+  <wsdl:portType name="WsTiersHttpPost">
+    <wsdl:operation name="GetById">
+      <wsdl:input message="tns:GetByIdHttpPostIn" />
+      <wsdl:output message="tns:GetByIdHttpPostOut" />
+    </wsdl:operation>
+    <wsdl:operation name="GetBy">
+      <wsdl:input message="tns:GetByHttpPostIn" />
+      <wsdl:output message="tns:GetByHttpPostOut" />
+    </wsdl:operation>
+    <wsdl:operation name="GetAll">
+      <wsdl:input message="tns:GetAllHttpPostIn" />
+      <wsdl:output message="tns:GetAllHttpPostOut" />
+    </wsdl:operation>
+    <wsdl:operation name="GetAllSorted">
+      <wsdl:input message="tns:GetAllSortedHttpPostIn" />
+      <wsdl:output message="tns:GetAllSortedHttpPostOut" />
+    </wsdl:operation>
+    <wsdl:operation name="GetManyBy">
+      <wsdl:input message="tns:GetManyByHttpPostIn" />
+      <wsdl:output message="tns:GetManyByHttpPostOut" />
+    </wsdl:operation>
+    <wsdl:operation name="GetManyBySorted">
+      <wsdl:input message="tns:GetManyBySortedHttpPostIn" />
+      <wsdl:output message="tns:GetManyBySortedHttpPostOut" />
+    </wsdl:operation>
+  </wsdl:portType>
+  <wsdl:binding name="WsTiersSoap" type="tns:WsTiersSoap">
+    <soap:binding transport="http://schemas.xmlsoap.org/soap/http" />
+    <wsdl:operation name="GetById">
+      <soap:operation soapAction="http://tempuri.org/GetById" style="document" />
+      <wsdl:input>
+        <soap:body use="literal" />
+      </wsdl:input>
+      <wsdl:output>
+        <soap:body use="literal" />
+      </wsdl:output>
+    </wsdl:operation>
+    <wsdl:operation name="GetByIds">
+      <soap:operation soapAction="http://tempuri.org/GetByIds" style="document" />
+      <wsdl:input>
+        <soap:body use="literal" />
+      </wsdl:input>
+      <wsdl:output>
+        <soap:body use="literal" />
+      </wsdl:output>
+    </wsdl:operation>
+    <wsdl:operation name="GetBy">
+      <soap:operation soapAction="http://tempuri.org/GetBy" style="document" />
+      <wsdl:input>
+        <soap:body use="literal" />
+      </wsdl:input>
+      <wsdl:output>
+        <soap:body use="literal" />
+      </wsdl:output>
+    </wsdl:operation>
+    <wsdl:operation name="GetAll">
+      <soap:operation soapAction="http://tempuri.org/GetAll" style="document" />
+      <wsdl:input>
+        <soap:body use="literal" />
+      </wsdl:input>
+      <wsdl:output>
+        <soap:body use="literal" />
+      </wsdl:output>
+    </wsdl:operation>
+    <wsdl:operation name="GetAllSorted">
+      <soap:operation soapAction="http://tempuri.org/GetAllSorted" style="document" />
+      <wsdl:input>
+        <soap:body use="literal" />
+      </wsdl:input>
+      <wsdl:output>
+        <soap:body use="literal" />
+      </wsdl:output>
+    </wsdl:operation>
+    <wsdl:operation name="GetManyBy">
+      <soap:operation soapAction="http://tempuri.org/GetManyBy" style="document" />
+      <wsdl:input>
+        <soap:body use="literal" />
+      </wsdl:input>
+      <wsdl:output>
+        <soap:body use="literal" />
+      </wsdl:output>
+    </wsdl:operation>
+    <wsdl:operation name="GetManyBySorted">
+      <soap:operation soapAction="http://tempuri.org/GetManyBySorted" style="document" />
+      <wsdl:input>
+        <soap:body use="literal" />
+      </wsdl:input>
+      <wsdl:output>
+        <soap:body use="literal" />
+      </wsdl:output>
+    </wsdl:operation>
+  </wsdl:binding>
+  <wsdl:binding name="WsTiersSoap12" type="tns:WsTiersSoap">
+    <soap12:binding transport="http://schemas.xmlsoap.org/soap/http" />
+    <wsdl:operation name="GetById">
+      <soap12:operation soapAction="http://tempuri.org/GetById" style="document" />
+      <wsdl:input>
+        <soap12:body use="literal" />
+      </wsdl:input>
+      <wsdl:output>
+        <soap12:body use="literal" />
+      </wsdl:output>
+    </wsdl:operation>
+    <wsdl:operation name="GetByIds">
+      <soap12:operation soapAction="http://tempuri.org/GetByIds" style="document" />
+      <wsdl:input>
+        <soap12:body use="literal" />
+      </wsdl:input>
+      <wsdl:output>
+        <soap12:body use="literal" />
+      </wsdl:output>
+    </wsdl:operation>
+    <wsdl:operation name="GetBy">
+      <soap12:operation soapAction="http://tempuri.org/GetBy" style="document" />
+      <wsdl:input>
+        <soap12:body use="literal" />
+      </wsdl:input>
+      <wsdl:output>
+        <soap12:body use="literal" />
+      </wsdl:output>
+    </wsdl:operation>
+    <wsdl:operation name="GetAll">
+      <soap12:operation soapAction="http://tempuri.org/GetAll" style="document" />
+      <wsdl:input>
+        <soap12:body use="literal" />
+      </wsdl:input>
+      <wsdl:output>
+        <soap12:body use="literal" />
+      </wsdl:output>
+    </wsdl:operation>
+    <wsdl:operation name="GetAllSorted">
+      <soap12:operation soapAction="http://tempuri.org/GetAllSorted" style="document" />
+      <wsdl:input>
+        <soap12:body use="literal" />
+      </wsdl:input>
+      <wsdl:output>
+        <soap12:body use="literal" />
+      </wsdl:output>
+    </wsdl:operation>
+    <wsdl:operation name="GetManyBy">
+      <soap12:operation soapAction="http://tempuri.org/GetManyBy" style="document" />
+      <wsdl:input>
+        <soap12:body use="literal" />
+      </wsdl:input>
+      <wsdl:output>
+        <soap12:body use="literal" />
+      </wsdl:output>
+    </wsdl:operation>
+    <wsdl:operation name="GetManyBySorted">
+      <soap12:operation soapAction="http://tempuri.org/GetManyBySorted" style="document" />
+      <wsdl:input>
+        <soap12:body use="literal" />
+      </wsdl:input>
+      <wsdl:output>
+        <soap12:body use="literal" />
+      </wsdl:output>
+    </wsdl:operation>
+  </wsdl:binding>
+  <wsdl:binding name="WsTiersHttpGet" type="tns:WsTiersHttpGet">
+    <http:binding verb="GET" />
+    <wsdl:operation name="GetById">
+      <http:operation location="/GetById" />
+      <wsdl:input>
+        <http:urlEncoded />
+      </wsdl:input>
+      <wsdl:output>
+        <mime:mimeXml part="Body" />
+      </wsdl:output>
+    </wsdl:operation>
+    <wsdl:operation name="GetBy">
+      <http:operation location="/GetBy" />
+      <wsdl:input>
+        <http:urlEncoded />
+      </wsdl:input>
+      <wsdl:output>
+        <mime:mimeXml part="Body" />
+      </wsdl:output>
+    </wsdl:operation>
+    <wsdl:operation name="GetAll">
+      <http:operation location="/GetAll" />
+      <wsdl:input>
+        <http:urlEncoded />
+      </wsdl:input>
+      <wsdl:output>
+        <mime:mimeXml part="Body" />
+      </wsdl:output>
+    </wsdl:operation>
+    <wsdl:operation name="GetAllSorted">
+      <http:operation location="/GetAllSorted" />
+      <wsdl:input>
+        <http:urlEncoded />
+      </wsdl:input>
+      <wsdl:output>
+        <mime:mimeXml part="Body" />
+      </wsdl:output>
+    </wsdl:operation>
+    <wsdl:operation name="GetManyBy">
+      <http:operation location="/GetManyBy" />
+      <wsdl:input>
+        <http:urlEncoded />
+      </wsdl:input>
+      <wsdl:output>
+        <mime:mimeXml part="Body" />
+      </wsdl:output>
+    </wsdl:operation>
+    <wsdl:operation name="GetManyBySorted">
+      <http:operation location="/GetManyBySorted" />
+      <wsdl:input>
+        <http:urlEncoded />
+      </wsdl:input>
+      <wsdl:output>
+        <mime:mimeXml part="Body" />
+      </wsdl:output>
+    </wsdl:operation>
+  </wsdl:binding>
+  <wsdl:binding name="WsTiersHttpPost" type="tns:WsTiersHttpPost">
+    <http:binding verb="POST" />
+    <wsdl:operation name="GetById">
+      <http:operation location="/GetById" />
+      <wsdl:input>
+        <mime:content type="application/x-www-form-urlencoded" />
+      </wsdl:input>
+      <wsdl:output>
+        <mime:mimeXml part="Body" />
+      </wsdl:output>
+    </wsdl:operation>
+    <wsdl:operation name="GetBy">
+      <http:operation location="/GetBy" />
+      <wsdl:input>
+        <mime:content type="application/x-www-form-urlencoded" />
+      </wsdl:input>
+      <wsdl:output>
+        <mime:mimeXml part="Body" />
+      </wsdl:output>
+    </wsdl:operation>
+    <wsdl:operation name="GetAll">
+      <http:operation location="/GetAll" />
+      <wsdl:input>
+        <mime:content type="application/x-www-form-urlencoded" />
+      </wsdl:input>
+      <wsdl:output>
+        <mime:mimeXml part="Body" />
+      </wsdl:output>
+    </wsdl:operation>
+    <wsdl:operation name="GetAllSorted">
+      <http:operation location="/GetAllSorted" />
+      <wsdl:input>
+        <mime:content type="application/x-www-form-urlencoded" />
+      </wsdl:input>
+      <wsdl:output>
+        <mime:mimeXml part="Body" />
+      </wsdl:output>
+    </wsdl:operation>
+    <wsdl:operation name="GetManyBy">
+      <http:operation location="/GetManyBy" />
+      <wsdl:input>
+        <mime:content type="application/x-www-form-urlencoded" />
+      </wsdl:input>
+      <wsdl:output>
+        <mime:mimeXml part="Body" />
+      </wsdl:output>
+    </wsdl:operation>
+    <wsdl:operation name="GetManyBySorted">
+      <http:operation location="/GetManyBySorted" />
+      <wsdl:input>
+        <mime:content type="application/x-www-form-urlencoded" />
+      </wsdl:input>
+      <wsdl:output>
+        <mime:mimeXml part="Body" />
+      </wsdl:output>
+    </wsdl:operation>
+  </wsdl:binding>
+  <wsdl:service name="WsTiers">
+    <wsdl:port name="WsTiersSoap" binding="tns:WsTiersSoap">
+      <soap:address location="http://referentiel.bas-rhin.fr/webservices/WsTiers.asmx" />
+    </wsdl:port>
+    <wsdl:port name="WsTiersSoap12" binding="tns:WsTiersSoap12">
+      <soap12:address location="http://referentiel.bas-rhin.fr/webservices/WsTiers.asmx" />
+    </wsdl:port>
+    <wsdl:port name="WsTiersHttpGet" binding="tns:WsTiersHttpGet">
+      <http:address location="http://referentiel.bas-rhin.fr/webservices/WsTiers.asmx" />
+    </wsdl:port>
+    <wsdl:port name="WsTiersHttpPost" binding="tns:WsTiersHttpPost">
+      <http:address location="http://referentiel.bas-rhin.fr/webservices/WsTiers.asmx" />
+    </wsdl:port>
+  </wsdl:service>
+</wsdl:definitions>

+ 6 - 1
CD67.FicheCollege.MVC/Controllers/ActionsEduController.cs

@@ -39,6 +39,7 @@ namespace CD67.FicheCollege.MVC.Controllers
             {
                 return HttpNotFound();
             }
+            actionEdu.hydrate();
             ActionEduViewModel model = new ActionEduViewModel(actionEdu, db);
 
             return View(model);
@@ -56,6 +57,7 @@ namespace CD67.FicheCollege.MVC.Controllers
             actionEdu.AnneeId = annee_id.Value;
             AnneeFactory fact = new AnneeFactory(db);
             actionEdu.Annee = fact.getById(annee_id);
+            actionEdu.hydrate();
 
             ActionEduViewModel model = new ActionEduViewModel(actionEdu, db, ModeAcces.Creation);
             return View(model);
@@ -74,7 +76,7 @@ namespace CD67.FicheCollege.MVC.Controllers
                 fact.add(ref actionEdu);
                 return RedirectToAction("Index", new { annee_id = actionEdu.AnneeId });
             }
-
+            actionEdu.hydrate();
             ActionEduViewModel model = new ActionEduViewModel(actionEdu, db, ModeAcces.Creation);
             return View(model);
         }
@@ -92,6 +94,7 @@ namespace CD67.FicheCollege.MVC.Controllers
             {
                 return HttpNotFound();
             }
+            action.hydrate();
             ActionEduViewModel model = new ActionEduViewModel(action, db, ModeAcces.Modification);
             return View(model);
         }
@@ -114,6 +117,7 @@ namespace CD67.FicheCollege.MVC.Controllers
                 db.ActionsEdu.Attach(actionEdu);
                 db.Entry(actionEdu).Reference(i => i.Annee).Load();
             }
+            actionEdu.hydrate();
             ActionEduViewModel model = new ActionEduViewModel(actionEdu, db, ModeAcces.Modification);
             return View(model);
         }
@@ -131,6 +135,7 @@ namespace CD67.FicheCollege.MVC.Controllers
             {
                 return HttpNotFound();
             }
+            actionEdu.hydrate();
             ActionEduViewModel model = new ActionEduViewModel(actionEdu, db);
             return View(model);
         }

+ 29 - 1
CD67.FicheCollege.MVC/Views/ActionsEdu/Create.cshtml

@@ -54,6 +54,16 @@
             </div>
         </div>
 
+        <div class="form-group">
+            @Html.LabelFor(model => actionEdu.TiersSid, htmlAttributes: new { @class = "control-label col-md-2" })
+            @Html.HiddenFor(model => actionEdu.TiersSid, new { data_picker = "tiers.id" })
+            <div class="col-md-10">
+                <span data-picker="tiers.id">@Html.DisplayFor(model => actionEdu.tiers.Id)</span> - <span data-picker="tiers.nom">@Html.DisplayFor(model => actionEdu.tiers.Nom)</span>
+            </div>
+            <span class="glyphicon glyphicon-trash removeItem btn btn-danger btn-sm" aria-hidden="true" data-type="tiers"></span>
+            <a class="modal-window cboxElement" href="http://referentiel.bas-rhin.fr/picker/cd67/tier67/" title="Selection tiers (nouvelle fenetre)">Sélectionner un tiers</a>
+        </div>
+
         <div class="form-group">
             @Html.LabelFor(model => actionEdu.Description, htmlAttributes: new { @class = "control-label col-md-2" })
             <div class="col-md-10">
@@ -72,4 +82,22 @@
 
 <div>
     @Html.ActionLink("Annuler", "Index", new { annee_id = actionEdu.AnneeId })
-</div>
+</div>
+
+@section Scripts {
+    <script type="text/javascript">
+        $(".removeItem").click(function () {
+            switch ($(this).data("type")) {
+                case 'tiers':
+                    $('#actionEdu_TiersSid').val(null);
+                    $("span[data-picker='tiers.id']").html('');
+                    $("span[data-picker='tiers.nom']").html('');
+                default:
+                    return false;
+            }
+        });
+
+    </script>
+
+    @Scripts.Render("~/bundles/jqueryval")
+}

+ 3 - 0
CD67.FicheCollege.MVC/Views/ActionsEdu/Details.cshtml

@@ -40,6 +40,9 @@
         
         <dt>Elèves concernés </dt>
         <dd>@actionEdu.totalEleves</dd>
+                
+        <dt>Tiers </dt>
+        <dd>@Html.DisplayFor(model => actionEdu.tiers.Id) - @Html.DisplayFor(model => actionEdu.tiers.Nom)</dd>
 
         <dt>@Html.DisplayNameFor(model => actionEdu.Description)</dt>
         <dd>@Html.DisplayFor(model => actionEdu.Description)</dd>

+ 27 - 0
CD67.FicheCollege.MVC/Views/ActionsEdu/Edit.cshtml

@@ -53,6 +53,16 @@
             </div>
         </div>
 
+        <div class="form-group">
+            @Html.LabelFor(model => actionEdu.TiersSid, htmlAttributes: new { @class = "control-label col-md-2" })
+            @Html.HiddenFor(model => actionEdu.TiersSid, new { data_picker = "tiers.id" })
+            <div class="col-md-10">
+                <span data-picker="tiers.id">@Html.DisplayFor(model => actionEdu.tiers.Id)</span> - <span data-picker="tiers.nom">@Html.DisplayFor(model => actionEdu.tiers.Nom)</span>
+            </div>
+            <span class="glyphicon glyphicon-trash removeItem btn btn-danger btn-sm" aria-hidden="true" data-type="tiers"></span> 
+            <a class="modal-window cboxElement" href="http://referentiel.bas-rhin.fr/picker/cd67/tier67/" title="Selection tiers (nouvelle fenetre)">Sélectionner un tiers</a>
+        </div>
+
         <div class="form-group">
             @Html.LabelFor(model => actionEdu.Description, htmlAttributes: new { @class = "control-label col-md-2" })
             <div class="col-md-10">
@@ -81,3 +91,20 @@
     @Html.ActionLink("Annuler", "Details", new { id = actionEdu.Id })
 </div>
 
+@section Scripts {
+    <script type="text/javascript">
+        $(".removeItem").click(function () {
+            switch ($(this).data("type")) {
+                case 'tiers':
+                    $('#actionEdu_TiersSid').val(null);
+                    $("span[data-picker='tiers.id']").html('');
+                    $("span[data-picker='tiers.nom']").html('');
+                default:
+                    return false;
+            }
+        });
+
+    </script>
+
+    @Scripts.Render("~/bundles/jqueryval")
+}

+ 2 - 2
CD67.FicheCollege.MVC/Views/Colleges/Edit.cshtml

@@ -162,7 +162,7 @@
 
                 <div class="col-md-offset-2 col-md-4" data-picker-type="principal">
                     @Html.HiddenFor(model => college.PrincipalSid, new { data_picker = "agent.id" })
-                    <a class='modal-window' href="http://referentiel.bas-rhin.fr/picker/cd67/ad67/?type=principal" title="Selection du principal (nouvelle fenetre)">Sélectionner un principal</a>
+                    <a class='modal-window' href="http://referentiel.bas-rhin.fr/picker/cd67/externes/?type=principal&query=organisation:%22Principaux%20de%20coll%C3%A8ges%22" title="Selection du principal (nouvelle fenetre)">Sélectionner un principal</a>
                     <br />
                     <div class="panel panel-default" id="Principal_Panel" name="Principal_Panel" style="@if (college.PrincipalSid == null) { <text>display: none;</text> }">
                         <div class="panel-heading clearfix">
@@ -185,7 +185,7 @@
 
                 <div class="col-md-4" data-picker-type="adjoint">
                     @Html.HiddenFor(model => college.AdjointSid, new { data_picker = "agent.id" })
-                    <a class='modal-window' href="http://referentiel.bas-rhin.fr/picker/cd67/ad67/?type=adjoint" title="Selection du principal adjoint (nouvelle fenetre)">Sélectionner un principal adjoint</a>
+                    <a class='modal-window' href="http://referentiel.bas-rhin.fr/picker/cd67/externes/?type=adjoint&query=organisation:%22Principaux%20de%20coll%C3%A8ges%22" title="Selection du principal adjoint (nouvelle fenetre)">Sélectionner un principal adjoint</a>
                     <br />
                     <div class="panel panel-default" id="Adjoint_Panel" name="Adjoint_Panel" style="@if (college.AdjointSid == null) { <text>display: none;</text> }">
                         <div class="panel-heading clearfix">