Dieser Artikel ist ein Spiegelartikel der maschinellen Übersetzung, bitte klicken Sie hier, um zum Originalartikel zu springen.

Ansehen: 16201|Antwort: 5

Entwicklung von Ethereum-Smart-Contracts über Nethereum und .NET

[Link kopieren]
Veröffentlicht am 06.08.2018 13:55:51 | | |
. .NET ist ein uraltes Framework, das sowohl von Indie- als auch von Enterprise-Entwicklern geliebt wird. Die Möglichkeit, aus einer Vielzahl von Sprachen zu wählen und auf eine Vielzahl von Plattformen zu deployen, einschließlich einer Vielzahl von Funktionen von mobil bis Server, macht . .NET wird zu einer großartigen Wahl für eine Vielzahl von Anwendungen. Obwohl. .NET macht viel, aber man kann auch sagen, dass es nichts tut. Zum Beispiel kannst du nicht verwenden. .NET (außer mit Silverlight...... ), und es existiert auch nicht. .NET-unterstützte Sprachen, was es Entwicklern ermöglicht, Smart Contracts zu schreiben.

Die Entwicklungssprache von Smart Contracts ist Solidity. Solidity ist eine zweckspezifische Sprache, die viele Aspekte der Umgebung annimmt, in der sie arbeitet, und sehr eng mit der Blockchain-Technologie verknüpft ist. Diese hypothetischen Merkmale schließen andere Sprachen aus.

Der Smart Contract selbst ist nur die halbe Geschichte. Für Anwendungen müssen Smart Contracts über RPC aufgerufen werden. Hier kommen Web3-Kunden ins Spiel. Ein Web3-Client ist einfach eine Client-Anwendung, die es der Client-Anwendung ermöglicht, mit Smart Contracts auf Ethereum zu interagieren, sodass sie, solange eine bestimmte Sprache existiert, mit Ethereum interagieren kann.

Für . Das Wichtigste für .NET ist ein Projekt namens Nethereum. (Nethereum ist ein Portal für .NET und Ethereum unter der Adresse:https://nethereum.com/)。 Diese Bibliothek versucht, dieselbe Funktionalität von Web3.js zu replizieren, ähnlich wie JavaScript-Anwendungen in Browsern und NodeJS.

In diesem Tutorial werden wir einen Smart Contract für Ganache bereitstellen und dann verwenden. NET-Core erzeugt ein einfaches . .NET-Anwendungen zur Interaktion mit Smart Contracts.

Erstellen und veröffentlichen Sie einen Smart Contract

1. Laden Sie Ganache herunter und installieren Sie, eine sehr nützliche private Blockchain für die Entwicklung von Ethereum.

Der Hyperlink-Login ist sichtbar.

2. Installieren Sie Truffle in einem Terminal, in der Eingabeaufforderung oder in einer Powershell-Sitzung. Truffle ist ein Framework und eine Reihe von Nutzwerkzeugen, die helfen, die solide Entwicklung von Smart Contracts zu erleichtern. Benutze NPM, um den untenstehenden Befehl zu erfüllen.



3. Einen Ordner erstellen und Trüffel-Init unter diesem Ordner ausführen



4. Trüffel erstellt einige neue Ordner, Verträge, Tests und Migrationen. Erstelle eine neue Datei Vote.sol im Ordner Verträge.

5. Fügen Sie den folgenden Code in die neu erstellte Vote.sol ein und speichern Sie die Datei. Dieser Smart Contract erfasst nur die Anzahl der abgegebenen Stimmen von 2 Kandidaten. Der Vertrag verwendet den Nachrichtenabsender (d. h. die Kontoadresse) als Wähler. Es erlaubt nur 1 Stimme pro Konto.



6. Erstelle eine neue Datei namens 2_vote.js im Migrations-Ordner.

7. Kopieren Sie den folgenden Code in die 2_vote.js und speichern Sie ihn.


8. Öffnen Sie truffle.js im Root-Verzeichnis des von Ihnen erstellten Ordners und fügen Sie den Code unten ein, dann speichern Sie die Datei. Diese Konfiguration von Trüffel verwendet Ganache.



9. Ganache im Startmenü starten.

10. Smart Contracts mit Truffle bereitstellen. Das Ganache-Netzwerk ist in truffle.js Datei definiert.


11. Achte auf das Ergebnis. Du wirst eine ähnliche Ausgabe wie unten sehen. Dies ist die Adresse des Abstimmungsvertrags. Kopiere und füge den Hex-String für spätere Verwendung ein.


Erstelle ein . .NET-Anwendungen rufen Smart Contracts auf

1. Erstellen Sie in einem neuen Verzeichnis eine neue Konsolenanwendung mit dem Befehl dotnet.


2. Installieren Sie das Nethereum-Paket.


3. Bearbeiten Sie Program.cs Datei. Ersetzen Sie den Standardcode durch den untenstehenden Code. Dadurch kann die Konsole Kontoadressen und Nutzerabstimmungen anfordern. Speichere die Datei.


4. Fügen Sie program.cs die gerade eingetragene Adresse an die Adresse des Deployment-Kontakts ein und speichern Sie die Datei.


5. Kompiliere die Bewerbung.


6. Starte die App.


7. Du wirst sehen, dass die App dich auffordert zu tippen. Geben Sie die Adresse ein und stimmen Sie ab. Du kannst die Kontoadresse aus der Ganache-GUI unter dem Reiter Konten kopieren.


8. Starte die App erneut und du wirst sehen, dass die Stimmenzahl gestiegen ist.


Für Nethereum ist es einfach, Smart Contracts mit jedem beliebigen zu integrieren. .NET-Anwendungen. Da Nethereum auf .NET basiert, kann es für .NET-Kernanwendungen verwendet werden. .NET-Standard, Xamarin und verschiedene Windows-Anwendungen. Mit Nethereum, dem mächtigen Ethereum und . NET steht Ihnen jetzt zur Verfügung!


Veröffentlicht am 13.10.2020 17:17:23 |
Chef, Sie haben sehr gut geschrieben, ich habe ein paar Fragen. 1. Wie wird Ihre ABI-Akte erstellt? Nachdem ich den Vertragscode kopiert habe, sind die Abi-Dateien, die durch das Kompilieren mit VSCodes F5 generiert wurden, alle doppelt angeführt, und das Einbetten in den Code wird problematisch sein, während deine Dateien in Anführungszeichen gesetzt werden. 2. Mein Code kopiert Web3 web3 = neues Web3 (URL); Diese Codezeile liefert einen Fehler, nämlich "Web3 ist ein Namespace, aber es wird als Typ verwendet", und der Vorschlag zur Änderung ist, ihn in IWeb3 zu ändern. Sehr dringend! Ich hoffe, Gott kann mir helfen, die Antwort zu beantworten. Ich möchte QQ kontaktieren:1206814310 (nur Beratung und normalerweise nicht stören) ist wirklich dringend! Vielen Dank!
Veröffentlicht am 06.01.2022 12:45:19 |
Lernen Sie, wie Sie Ethereum-Smart-Contracts mit Nethereum und .NET entwickeln
Veröffentlicht am 17.01.2022 14:01:56 |
Gut, wie eine, lern zu lernen
Veröffentlicht am 19.03.2022 16:37:53 |
Gut, wie eine, lern zu lernen
Veröffentlicht am 02.07.2022 11:40:47 |
Wie einer, lern zu lernen
Verzichtserklärung:
Alle von Code Farmer Network veröffentlichten Software, Programmiermaterialien oder Artikel dienen ausschließlich Lern- und Forschungszwecken; Die oben genannten Inhalte dürfen nicht für kommerzielle oder illegale Zwecke verwendet werden, andernfalls tragen die Nutzer alle Konsequenzen. Die Informationen auf dieser Seite stammen aus dem Internet, und Urheberrechtsstreitigkeiten haben nichts mit dieser Seite zu tun. Sie müssen die oben genannten Inhalte innerhalb von 24 Stunden nach dem Download vollständig von Ihrem Computer löschen. Wenn Ihnen das Programm gefällt, unterstützen Sie bitte echte Software, kaufen Sie die Registrierung und erhalten Sie bessere echte Dienstleistungen. Falls es eine Verletzung gibt, kontaktieren Sie uns bitte per E-Mail.

Mail To:help@itsvse.com