Ich verwende SvcUtil.exe um IClassName.cs Datei aus der wsdl-Datei zu generieren, und das funktioniert einwandfrei. Mein Problem ist, dass ich nicht weiß, wie ich ClassName.svc datei mit Befehlsargumenten für SvcUtil.exe generiert.
Nach dem Ausführen der Datei "SvcUtil.exe" möchte ich den WCF-Dienst erhalten, wenn Sie ihn aus Visual Studio Wizard mit allen Klassen * .svc, * .cs und der Schnittstelle erstellt haben.
Vielen Dank.... Skrch
Um eine Proxy-Klasse zu generieren, muss unser Service betriebsbereit sein. Stellen Sie daher vor der Verwendung dieses Dienstprogramms sicher, dass Ihr Dienst ohne Probleme ausgeführt wird.
Nachdem Sie den Dienststatus überprüft haben, rufen Sie die Eingabeaufforderung von Visual Studio auf und führen Sie den folgenden Befehl aus.
svcutil http://localhost/MyService/ClassName.svc /Language=c#
/t:Code /out:ClassNameProxy.cs /config:ClassNameProxy.config
Im obigen Befehl sollten Sie die Dienst-URL (http://localhost/MyService/Service1.svc
) durch die URL Ihres Dienstes ersetzen. Da meine Dienste in c # .net entwickelt werden, wähle ich die Proxys in derselben Sprache mit dem/Language = c # -Flag.
/ t: code gibt an, dass der ausgegebene Code als Code generiert werden soll.
Die Parameter "/out:ClassNameProxy.cs /config:ClassNameProxy.config" weisen das Dienstprogramm an, die Dateien gemäß den in diesen Parameterwerten angegebenen Namen zu benennen. Nachdem Sie den Befehl ausgeführt haben, generiert das Tool die Ausgabedatei und die Konfigurationsdatei.
Fügen Sie anschließend die Datei ClassNameProxy.cs in Ihr Projekt ein, öffnen Sie die Datei ClassNameProxy.config und kopieren Sie die Einträge in Ihre Datei web.config . Möglicherweise müssen Sie auch die ClassNameProxy.vb-Datei und den namespace gemäß den Angaben aktualisieren, die Sie in Ihrem Projekt verwenden. Danach können Sie den Dienst einfach in Ihrem Code referenzieren und die Operationen aufrufen.
svcutil http://service/metadataEndpoint
- Generieren Sie Client-Code aus einem laufenden Service oder aus Online-Metadatendokumenten.
svcutil *.wsdl *.xsd /language:C#
- Generieren Sie Clientcode aus lokalen Metadatendokumenten.
svcutil /dconly *.xsd /language:VB
- Generieren Sie Datenvertragstypen in VisualBasic aus lokalen Schemadokumenten.
svcutil /t:metadata http://service/metadataEndpoint
- Laden Sie Metadatendokumente von laufenden Diensten herunter
svcutil myAssembly.dll
- Generieren Sie Metadatendokumente für Serviceverträge und zugehörige Typen in eine Versammlung
svcutil myServiceHost.exe /serviceName:myServiceName
- Generieren Sie Metadatendokumente für einen Dienst und alle zugehörigen Dienste Verträge und Datentypen in einer Assembly
svcutil myServiceHost.exe /dconly - Generieren Sie Metadatendokumente für Datentypen in einer Assembly
svcutil /validate /serviceName:myServiceName myServiceHost.exe
- Überprüfen Sie das Service-Hosting
svcutil /t:xmlserializer myContractLibrary.exe
- Generieren Sie Serialisierungstypen für XmlSerializer-Typen, die von einem Dienst verwendet werden. Verträge in der Versammlung
Für jeden, der immer noch nach der Antwort sucht und die 2012-Version nicht zum Laufen bringen konnte, haben Visual Studio 2015 und .Net 4.5 das Tool svcutil.exe mit der Option/serviceContract aktualisiert, um eine Klasse zu generieren, die dann als SVC-Dienst implementiert werden kann. Abhängig von den ursprünglichen XSDs müssen Sie möglicherweise auch die Optionen/syncOnly/wrapped/messageContract angeben
Ich denke, das .NET 4.5 Contract First Tool, das als Build-Task in Visual Studio 2012 integriert ist, wird Ihnen dabei helfen, die benötigten Servicedateien zu erstellen.
Serviceverträge müssen häufig aus vorhandenen Diensten erstellt werden. In .NET Framework 4.5 können Datenvertragsklassen mithilfe des Contract-First-Tools automatisch aus vorhandenen Services erstellt werden. Um das Contract-First-Tool verwenden zu können, muss die XML-Schemadefinitionsdatei (XSD) lokal heruntergeladen werden. Das Tool kann keine Remote-Datenverträge über HTTP importieren.
http://msdn.Microsoft.com/de-de/library/hh674270(v=vs.110).aspx
Svcutil.exe generiert den Service-Client-Proxy auf der Grundlage der WSDL (Web Service Description Language) aus dem Dienst.
Öffnen Sie den Visual Studio-Befehl Aufforderung und führen Sie den Befehl aus
svcutil http://localhost/MyService/Service.svc /Language=c# /t:Code /out:C:\Service\ServiceProxy.cs /config:C:\Service\ServiceProxy.config
es generiert zwei Dateien im Ordner C:\Service, die Proxy-Datei und die Konfigurationsdatei.
Weitere Details hier .