. .NET is een oud framework dat geliefd is bij zowel indie- als enterprise-ontwikkelaars. De mogelijkheid om te kiezen uit verschillende talen en te deployen naar een breed scala aan platforms, waaronder een breed scala aan mogelijkheden van mobiel tot server, maakt . .NET wordt een uitstekende keuze voor diverse toepassingen. Hoewel. .NET doet veel, maar je kunt ook zeggen dat het niets doet. Bijvoorbeeld, je kunt geen gebruik maken van . .NET (tenzij je Silverlight gebruikt...... ), en bestaat het ook niet. .NET-ondersteunde talen, waardoor ontwikkelaars smart contracts kunnen schrijven.
De ontwikkeltaal van smart contracts is soliditeit. Solidity is een doelspecifieke taal die veel aanneemt over de omgeving waarin het opereert, en het is zeer nauw geïntegreerd met blockchaintechnologie. Het zijn deze hypothetische kenmerken die andere talen uitsluiten.
Het slimme contract zelf is maar de helft van het verhaal. Voor applicaties moeten smart contracts ze via RPC aanroepen. Hier komen Web3-clients om de hoek kijken. Een Web3-client is simpelweg een clientapplicatie die de clientapplicatie in staat stelt te communiceren met smart contracts die op Ethereum draaien, zodat zolang er een bepaalde taal bestaat, deze met Ethereum kan interfacen.
Voor . Het belangrijkste voor .NET is een project genaamd Nethereum. (Nethereum is een portaal voor .NET en Ethereum op het adres:https://nethereum.com/)。 Deze bibliotheek probeert dezelfde functionaliteit te repliceren die Web3.js biedt, vergelijkbaar met JavaScript-applicaties die in browsers en NodeJS draaien.
In deze tutorial zetten we een smart contract in op Ganache en gebruiken we vervolgens . NET core creëert een eenvoudige . .NET-applicaties om te koppelen aan slimme contracten.
Maak en publiceer een smart contract
1. Download en installeer Ganache, een zeer nuttige private blockchain voor Ethereum-ontwikkeling.
De hyperlink-login is zichtbaar.
2. Installeer Truffle in een terminal, opdrachtprompt of Powershell-sessie. Truffel is een framework en set van hulptools die helpen bij de soliditeitsontwikkeling van smart contracts. Gebruik NPM om het onderstaande commando te voltooien.
3. Maak een map aan en voer truffel init onder deze map uit
4. Truffel zal nieuwe mappen aanmaken, contract, test en migratie. Maak een nieuw bestand Vote.sol aan in de map contracts.
5. Plak de volgende code in de nieuw aangemaakte Vote.sol en sla het bestand op. Dit smart contract registreert alleen het aantal stemmen dat door 2 kandidaten is uitgebracht. Het contract gebruikt de afzender van het bericht (d.w.z. het accountadres) als kiezer. Het staat maar 1 stem per account toe.
6. Maak een nieuw bestand aan met de naam 2_vote.js in de migratiemap.
7. Kopieer de volgende code naar de 2_vote.js en sla deze op.
8. Open truffle.js in de hoofdmap van de map die je hebt aangemaakt en plak de code eronder, sla vervolgens het bestand op. Deze configuratie van truffel gebruikt ganache.
9. Start Ganache in het Startmenu.
10. Zet smart contracts uit met Truffle. Het ganache-netwerk is gedefinieerd in truffle.js bestand.
11. Let op de output. Je ziet een output die lijkt op die hieronder. Dit is het adres van het stemcontract. Kopieer en plak de hex-string voor later gebruik.
Maak een . .NET-applicaties roepen smart contracts aan
1. Maak in een nieuwe map een nieuwe consoleapplicatie aan met behulp van de dotnet-commando.
2. Installeer het Nethereum-pakket.
3. Bewerk Program.cs bestand. Vervang de standaardcode door de onderstaande code. Hierdoor kan de console accountadressen en gebruikersstemmen vragen. Sla het bestand op.
4. Plak program.cs het adres dat we net hebben geregistreerd op het adres van het contactpersoon voor de deployment en sla het bestand op.
5. Verzamel de applicatie.
6. Start de app.
7. Je ziet dat de app je vraagt om te typen. Voer het adres in en stem. Je kunt het accountadres kopiëren vanuit de Ganache GUI onder het tabblad Accounts.
8. Start de app opnieuw en je zult zien dat de stemmen zijn gestegen.
Voor Nethereum is het eenvoudig om smart contracts te integreren met elke . .NET-applicaties. Omdat Nethereum gebaseerd is op .NET, kan het worden gebruikt voor .NET core-applicaties, . .NET-standaard, Xamarin en diverse Windows-applicaties. Met Nethereum is het machtige Ethereum en . NET staat nu tot uw beschikking!
|