2017-03-22 3 views
1

Ich versuche RabbitMQ auf meinem Visual Studio 2017-Projekt für Raspberry Pi zu installieren.Kaninchen MQ auf RPi WIN10 IoT

Ich versuche von 2 differents Möglichkeiten:

1) This first : https://paolopatierno.wordpress.com/2015/08/17/windows-iot-core-and-m2mqtt-a-simple-marriage/ 
    I'm trying to add RabbitMqClient instead of M2Mqtt used in this tutorial. 
    I've got this error (in french) : 

Install-Package : Le package RabbitMQ.Client 4.1.1 n'est pas compatible avec uap10.0 (UAP,Version=v10.0). Le package RabbitMQ.Client 4.1.1 prend en charge : 
- net451 (.NETFramework,Version=v4.5.1) 
- netstandard1.5 (.NETStandard,Version=v1.5) 

But i use .NET 4.5.1 or +. And when I'm trying to add the "RabbitMQ.Client.dll" to my project, I've got the following error : 

'A reference to '...' could not be added. The project targets '.NETCore' while the file reference targets '.NETFramework'. This is not a supported scenario.' 


2) The second way i'm trying to explore is to create a new "Background Application (IoT)" but i have the same errors. 

Vielen Dank für Ihre Hilfe und sorry für die schlechte Englisch.

Antwort

1

Derzeit wird RabbitMQ.Client in UWP nicht unterstützt, da einige Abhängigkeiten in UWP nicht unterstützt werden. Sie haben diese Fehlerinformationen erhalten.

Aber RabbitMQ.Client in .NET Core unterstützt.

Und Windows iot Kern hat vor kurzem .NET Core verfügbar (Wie es derzeit steht, ist es kein offizielles Release).

Achtung: Einige Informationen beziehen sich auf bereits freigegebene Produkte, die vor der Markteinführung erheblich geändert werden können. Microsoft übernimmt keine ausdrücklichen oder stillschweigenden Garantien in Bezug auf die hier bereitgestellten Informationen.

So können Sie .Net Core App, Konsole App zum Beispiel auf Windows iot-Core mit RabbitMQ.Client unterstützt. Sie können es so tun:

  1. Erstellen Sie .Net Core-Konsole App.
  2. Installieren RabbitMQ.Client für die App mit diesem Befehl:

    dotnet add package RabbitMQ.Client

  3. Add the namespace and code lines.

  4. Kompilieren Sie die App in eine ausführbare Datei für ARM-Plattform.

  5. Kopieren Sie Ihre App (im folgenden Pfad) zum Raspberry Pi und führen Sie die .exe aus.

[YOUR PROJECT NAME]\bin\Debug\netcoreapp2.0\win8-arm\publish

Für weitere Informationen können Sie "Running Native .NET Core Apps on Raspberry Pi (ARM)" verweisen.

+0

Helo Rita Han, Vielen Dank für Ihre Antwort. Ich habe jetzt eine .exe mit RabbitMQ in einem Core Console App-Projekt. In diesem Projekt habe ich diesen Code (worker.cs): https://www.rabbitmq.com/tutorials/tutorial-two-dotnet.html Wenn ich lauge es von Powershell mit meinem RPi3 verbunden ist, der .exe Start, konsumiere eine Nachricht von meiner Warteschlange, wenn es Nachrichten gibt, aber sofort aufhören. Hast du eine Ahnung von diesem Problem? Danke nochmal. –

+0

Haben Sie versucht, [Putty] (http://www.putty.org/) anstelle von Powershell zu verwenden? –

+0

Vielen Dank! Das funktioniert !!! Wie kannst du das erklären? :) Ich habe eine letzte Frage, weißt du, ob es möglich ist, diese .exe als Dienst einzustellen? Wenn der RPi3 abstürzt oder neu startet, muss diese .exe automatisch gestartet werden. Nochmals vielen Dank für Ihre Antworten. –

Verwandte Themen