| 

.NET C# Java Javascript Exception

0
In einer Webandwendung mag es unter Umständen notwendig sein, dass das Projekt nicht alle WCF-Dienste statisch verlinkt. Vor allem dann, wenn die Anwendung mit Plugins strukturiert wird und eine lose Kopplung abgestrebt wird. Optimal wäre es dann, wenn WCF-Dienste physisch voneinander getrennt sind, sich also in unterschiedlichen Bibliotheken bzw. Assemblies befinden und wenn der WCF-Host beim [...]

say-hello-service

In einer Webandwendung mag es unter Umständen notwendig sein, dass das Projekt nicht alle WCF-Dienste statisch verlinkt. Vor allem dann, wenn die Anwendung mit Plugins strukturiert wird und eine lose Kopplung abgestrebt wird.

Optimal wäre es dann, wenn WCF-Dienste physisch voneinander getrennt sind, sich also in unterschiedlichen Bibliotheken bzw. Assemblies befinden und wenn der WCF-Host beim Hinzufügen neuer Module nicht neu gestartet werden muss.

Die Webanwendung bietet ein bin-Verzeichnis, welches jegliche Änderung jedoch mit einem Neustart der Anwendung quittiert. Weitere Verzeichnisse, die für das Ablegen von WCF-Diensten genutzt werden können, kann man mithilfe einer kleinen Ergänzung der web.config hinzufügen:


<runtime>
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
<probing privatePath="bin;ServicePlugins"/>
</assemblyBinding>
</runtime>

Somit steht das Verzeichnis ServicePlugins für weitere, dynamische Dienste zur Verfügung. Diese Dienste können nun in eigenen Projekten (C#-Klassenbibliothek) untergebracht werden und müssen mit dem EnableClientAccess-Attribut dekoriert werden:


namespace Services
{
[EnableClientAccess]
public class TestService: DomainService
{
public void SayHello()
{

}
}
}

Die kompilierte dll-Datei kann in das ServicePlugin-Verzeichnis kopiert werden und wird sofort vom WCF-Host adaptiert. Erreicht werden kann der Dienst anschließend über: http://localhost:xxxx/Services-TestService.svc

Der Pfad besteht dabei aus der Anschlussstelle und dem Klassennamen inklusive des gesamten Namespaces dieser Klasse. Im Namespace werden alle “.” durch “-” ersetzt, was zu dem besagten Ergebnis führt.

.net csharp wcf xml services
Weitere News:
Schreibe einen Kommentar:
Themen:
services xml wcf csharp .net
Entweder einloggen... ...oder ohne Wartezeit registrieren
Benutzername
Passwort
Passwort wiederholen
E-Mail
TOP TECHNOLOGIES CONSULTING GmbH