Ist es möglich, einen eigenständigen C # -Webdienst zu erstellen, der als EXE- oder Windows-Dienst bereitgestellt wird?
Ist es möglich, erstellen Sie eine C# - EXE-oder Windows-Service, Web-Service-Anfragen? Offensichtlich eine Art embedded, wohl begrenzte, web-server, ein Teil der EXE/service. Der EXE/service würde nicht verlassen sich auf IIS installiert wird. Vorzugsweise ist der eingebettete web-Dienst konnte Griff HTTPS/SSL-Typ-verbindungen.
Das Szenario ist dieses: der Kunde will installieren Sie einen kleinen Agenten (windows-Dienst) auf Ihrem corporate-Maschinen. Der agent haben zwei primäre Aufgaben: 1) überwachung des Systems über die Zeit und sammeln Sie bestimmte Teile der Daten und 2) reagieren, um web service Anfragen (SOAP -v - REST wird noch gefeilscht) für die Erhebung der Daten oder das system zu ändern Zwecken. Der Kunde mag die Idee von web-service-APIs, so dass eine beliebige Anzahl von clients (in jeder Sprache) geschrieben werden können, Tippen Sie in die verschiedenen Agenten unter der Unternehmens-Maschinen. Sie möchten die installation relativ schmerzfrei (zu installieren .NET, einige Montagen, service, ändern Sie die Windows-firewall starten Sie den Dienst), ohne dass IIS installiert und konfiguriert werden.
Ich weiß, dass ich dies mit Delphi. Aber der Kunde würde es vorziehen, dies in C# wenn möglich.
Irgendwelche Vorschläge?
InformationsquelleAutor der Frage Jason Swager | 2009-06-18
Du musst angemeldet sein, um einen Kommentar abzugeben.
Ja, es ist möglich, möchten Sie vielleicht einen Blick auf WCF und Self-Hosting.
InformationsquelleAutor der Antwort Paulo Santos
Ja, es ist möglich (und relativ einfach).
Hier ist ein CodeProject-Artikel zeigt, wie man ein basic-HTTP-server in C#. Dies könnte leicht in eine eigenständige EXE-oder service, und verwendet als web-service.
InformationsquelleAutor der Antwort Reed Copsey
Einer Technologie, die Sie vielleicht prüfen wollen, ist WCF. WCF kann ein bisschen wie ein Schmerz zu bekommen, aber es ist ein tolles screencast über bei DNRTV von Keith Elder, der zeigt, wie man mit dem WCF auf eine sehr einfache Art und Weise.
http://www.dnrtv.com/default.aspx?showNum=135
InformationsquelleAutor der Antwort Antonio Haley
Könnten Sie werfen Sie einen Blick auf HttpListener in der .Net framework.
InformationsquelleAutor der Antwort Grokys
Ich würde empfehlen, WCF. Es würde sehr gut passen in ein Produkt, wie Sie beschreiben. Es gibt eine gute Anzahl von Bücher zur Verfügung.
InformationsquelleAutor der Antwort AgileJon
Sicher, dass Sie das tun können. Ändern Sie die Art der Ausgabe des Projektes auf die Konsole-Anwendung. Dann in deiner Main-Funktion, fügen Sie ein string [] - parameter. Einige Schalter, erhalten Sie auf der Befehlszeile Sie können die Filiale zum ServiceBase.Führen Sie zum ausführen als Windows-Dienst oder einem Zweig zum anderen code ausführen, um eine Konsole-Anwendung.
InformationsquelleAutor der Antwort W. Kevin Hazzard