Je suis nouveau à WCF, j'ai ce fichier de configuration et je veux vraiment le rendre plus propre.WCF - Comment puis-je faire ce nettoyeur de configuration
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<system.serviceModel>
<services>
<service behaviorConfiguration="warConfig" name="Service.WarService">
<host>
<baseAddresses>
<add baseAddress="net.tcp://localhost:2222/war"/>
</baseAddresses>
</host>
<endpoint address="" binding="netTcpBinding" contract="Service.IWarService"/>
<endpoint address="MEX" binding="mexTcpBinding" contract="IMetadataExchange" />
</service>
<service behaviorConfiguration="authConfig" name="Service.AuthService">
<host>
<baseAddresses>
<add baseAddress="net.tcp://localhost:2222/auth"/>
</baseAddresses>
</host>
<endpoint address="" binding="netTcpBinding" contract="Service.IAuthService"/>
<endpoint address="MEX" binding="mexTcpBinding" contract="IMetadataExchange" />
</service>
</services>
<behaviors>
<serviceBehaviors>
<behavior name="warConfig">
<serviceMetadata />
</behavior>
<behavior name="authConfig">
<serviceMetadata />
</behavior>
</serviceBehaviors>
</behaviors>
</system.serviceModel>
<connectionStrings>
<add name="WarDatabaseEntities" connectionString="metadata=res://*/WarModel.csdl|res://*/WarModel.ssdl|res://*/WarModel.msl;provider=System.Data.SqlClient;provider connection string="Data Source=BOGUS\SQLEXPRESS;Initial Catalog=WarDatabase;Integrated Security=True;MultipleActiveResultSets=True"" providerName="System.Data.EntityClient" />
</connectionStrings>
</configuration>
1) Je suis en train de se débarrasser de ces adresses de base, mais quand je le lance je reçois cette exception
Could not find a base address that matches scheme net.tcp for the endpoint with binding NetTcpBinding. Registered base address schemes are [].
2) Si j'utilise svcutil.exe pour les services que je reçois une double classes dans les services client:
public partial class ObjectChangeTracker : object, System.Runtime.Serialization.IExtensibleDataObject
public class ExtendedPropertiesDictionary : System.Collections.Generic.Dictionary<string, object>
public class ObjectsAddedToCollectionProperties : System.Collections.Generic.Dictionary<string, Service.ObjectList>
public class ObjectsRemovedFromCollectionProperties : System.Collections.Generic.Dictionary<string, Service.ObjectList>
public class OriginalValuesDictionary : System.Collections.Generic.Dictionary<string, object>
public enum ObjectState : int
public class ObjectList : System.Collections.Generic.List<object>
Merci pour la réponse John, mais qu'en est-il de ces classes en double J'utilise svcutil net.tcp: // localhost: 2222/war et svcutil net.tcp: // localhost: 2222/auth et je reçois des classes en double dans ces 2 proxy généré. Comment puis-je gérer cela? – boo
@boo: ils ne sont pas des doublons - ils sont chacun dans leur propre espace de noms, n'est-ce pas? Est-ce que votre code compile? –
Non, il ne compile pas. Le message d'erreur que j'obtiens est que les classes que j'ai énumérées dans mon premier article sont dupliquées ... L'espace de noms est le même, devrait rendre ces espaces de noms différents? – boo