Denna artikel är en spegelartikel om maskinöversättning, klicka här för att hoppa till originalartikeln.

Utsikt: 16201|Svar: 5

Utveckling av Ethereum-smarta kontrakt via Nethereum och .NET

[Kopiera länk]
Publicerad på 2018-08-06 13:55:51 | | |
. .NET är ett uråldrigt ramverk som älskas av både indie- och företagsutvecklare. Möjligheten att välja mellan olika språk och distribuera till en mängd olika plattformar, inklusive ett brett spektrum av funktioner från mobil till server, gör . .NET blir ett utmärkt val för en mängd olika tillämpningar. Fast. .NET gör mycket, men man kan också säga att det inte gör någonting. Till exempel kan du inte använda . .NET (om man inte använder Silverlight...... ), och den existerar inte. .NET stödde språk, vilket gör det möjligt för utvecklare att skriva smarta kontrakt.

Utvecklingsspråket för smarta kontrakt är soliditet. Solidity är ett syftesspecifikt språk som förutsätter många saker om miljön där det verkar, och det är mycket nära integrerat med blockkedjeteknik. Det är dessa hypotetiska egenskaper som utesluter andra språk.

Själva smartkontraktet är bara halva historien. För applikationer måste smarta kontrakt anropa dem via RPC. Det är här Web3-klienter kommer in. En Web3-klient är helt enkelt en klientapplikation som gör det möjligt för klientapplikationen att interagera med smarta kontrakt som körs på Ethereum, så så länge ett visst språk existerar kan den gränssnitta med Ethereum.

För . Det viktigaste för .NET är ett projekt som heter Nethereum. (Nethereum är en portal för .NET och Ethereum på adressen:https://nethereum.com/)。 Detta bibliotek försöker replikera samma funktionalitet som erbjuds av Web3.js, liknande JavaScript-applikationer som körs i webbläsare och NodeJS.

I denna handledning kommer vi att distribuera ett smart kontrakt till Ganache och sedan använda . NET-kärnan skapar en enkel . .NET-applikationer för att gränssnitta smarta kontrakt.

Skapa och publicera ett smart kontrakt

1. Ladda ner och installera Ganache, en mycket användbar privat blockkedja för Ethereum-utveckling.

Inloggningen med hyperlänken är synlig.

2. I en terminal, kommandoprompt eller Powershell-session, installera Truffle. Truffle är ett ramverk och en uppsättning verktygsverktyg som hjälper till att underlätta soliditetsutvecklingen av smarta kontrakt. Använd NPM för att slutföra kommandot nedan.



3. Skapa en mapp och kör tryffel init under denna mapp



4. Tryffel skapar några nya mappar, kontrakt, test och migration. Skapa en ny fil, Vote.sol, i kontraktsmappen.

5. Klistra in följande kod i den nyskapade Vote.sol och spara filen. Detta smarta kontrakt registrerar endast antalet röster som lagts av två kandidater. Kontraktet använder meddelandeavsändaren (dvs. kontoadressen) som röstare. Det tillåter bara 1 röst per konto.



6. Skapa en ny fil som heter 2_vote.js i mappen för migreringar.

7. Kopiera följande kod till 2_vote.js och spara den.


8. Öppna truffle.js i rotkatalogen i mappen du skapade och klistra in koden nedan, spara sedan filen. Denna konfiguration av tryffel använder ganache.



9. Starta Ganache i Start-menyn.

10. Implementera smarta kontrakt med Truffle. Ganache-nätverket definieras i truffle.js fil.


11. Var uppmärksam på resultatet. Du kommer att se ett resultat liknande det nedan. Detta är adressen till röstningskontraktet. Kopiera och klistra in hexsträngen för senare användning.


Skapa en . .NET-applikationer anropar smarta kontrakt

1. Skapa en ny konsolapplikation i en ny katalog med dotnet-kommandot.


2. Installera Nethereum-paketet.


3. Redigera Program.cs fil. Byt ut standardkoden mot koden nedan. Detta gör att konsolen kan begära kontoadresser och användarröster. Spara filen.


4. På program.cs, klistra in adressen vi just registrerade till adressen till distributionskontakten och spara filen.


5. Kompylera applikationen.


6. Kör appen.


7. Du kommer att se appen be dig att skriva. Ange adressen och rösta. Du kan kopiera kontoadressen från Ganache GUI under fliken Konton.


8. Kör appen igen så ser du att rösterna har ökat.


För Nethereum är det enkelt att integrera smarta kontrakt med vilken . .NET-applikationer. Eftersom Nethereum är baserat på .NET kan det användas för .NET-kärnapplikationer, . .NET-standarden, Xamarin och olika Windows-applikationer. Med Nethereum använder vi det mäktiga Ethereum och . NET står nu till ditt förfogande!


Publicerad på 2020-10-13 17:17:23 |
Chef, du skrev väldigt bra, jag har några frågor. 1. Hur genereras din ABI-fil? Efter att jag kopierat kontraktskoden är de abi-filer som genereras genom att kompilera med VSCodes F5 alla dubbelciterade, och att sedan bädda in dem i koden blir problematiskt, och din är enkelcitat. 2. Min kod kopierar Web3 web3 = ny Web3 (url); Denna kodrad ger ett fel, som säger "Web3 är ett namnrymd, men det används som en typ", och ändringsförslaget är att ändra det till IWeb3. Mycket brådskande! Jag hoppas att Gud kan hjälpa till att svara. Jag är ivrig att kontakta QQ:1206814310 (endast konsultation och vanligtvis inte stör) är verkligen brådskande! Tack så mycket!
Publicerad på 2022-01-06 12:45:19 |
Lär dig att utveckla Ethereum smarta kontrakt med Nethereum och .NET
Publicerad på 2022-01-17 14:01:56 |
Tur att en, som ett, lär dig lära dig
Publicerad på 2022-03-19 16:37:53 |
Tur att en, som ett, lär dig lära dig
Publicerad på 2022-07-02 11:40:47 |
Som en, lär dig att lära dig
Friskrivning:
All programvara, programmeringsmaterial eller artiklar som publiceras av Code Farmer Network är endast för lärande- och forskningsändamål; Ovanstående innehåll får inte användas för kommersiella eller olagliga ändamål, annars kommer användarna att bära alla konsekvenser. Informationen på denna sida kommer från internet, och upphovsrättstvister har inget med denna sida att göra. Du måste helt radera ovanstående innehåll från din dator inom 24 timmar efter nedladdning. Om du gillar programmet, vänligen stöd äkta programvara, köp registrering och få bättre äkta tjänster. Om det finns något intrång, vänligen kontakta oss via e-post.

Mail To:help@itsvse.com