. .NET е древна рамка, обичана както от независими, така и от корпоративни разработчици. Възможността да избирате между различни езици и да внедрявате на различни платформи, включително широк спектър от възможности – от мобилни до сървърни устройства, прави . .NET се превръща в отличен избор за различни приложения. Въпреки това. .NET прави много, но може да се каже, че не прави нищо. Например, не можеш да използваш . .NET (освен ако не използваш Silverlight...... ), нито съществува. Езици, поддържани от .NET, което позволява на разработчиците да пишат смарт договори.
Езикът на разработка на смарт договорите е стабилността. Solidity е език, специфичен за целта, който приема много неща за средата, в която работи, и е много тясно интегриран с блокчейн технологията. Именно тези хипотетични характеристики изключват други езици.
Самият смарт договор е само половината от историята. За приложенията смарт договорите трябва да ги извикват чрез RPC. Тук идват на помощ клиентите на Web3. Web3 клиентът е просто клиентско приложение, което позволява на клиентското приложение да се свързва със смарт договори, работещи на Ethereum, така че докато съществува даден език, то може да се свързва с Ethereum.
За . Най-важното за .NET е проектът, наречен Nethereum. (Nethereum е портал за .NET и Ethereum на адреса:https://nethereum.com/)。 Тази библиотека се опитва да възпроизведе същата функционалност, предоставена от Web3.js, подобно на JavaScript приложенията, работещи в браузъри и NodeJS.
В този урок ще разположим смарт договор за Ganache и след това ще използваме . NET ядро създава просто . .NET приложения за интерфейс със смарт договори.
Създайте и публикувайте смарт договор
1. Изтеглете и инсталирайте Ganache, много полезен частен блокчейн за разработка на Ethereum.
Входът към хиперлинк е видим.
2. В терминал, команден ред или сесия на Powershell, инсталирайте Truffle. Truffle е рамка и набор от инструменти за полезност, които подпомагат разработката на смарт договори за стабилност. Използвайте NPM, за да изпълните командата по-долу.
3. Създай папка и стартирай truffle init под нея
4. Truffle ще създаде нови папки, договори, тестове и миграция. Създай нов файл Vote.sol в папката с договори.
5. Поставете следния код в новосъздадения Vote.sol и запазете файла. Този смарт договор записва само броя гласове, подадени от двама кандидати. Договорът използва подателя на съобщението (т.е. адреса на акаунта) като гласоподавател. Позволява само 1 глас на акаунт.
6. Създайте нов файл, наречен 2_vote.js, в папката migrations.
7. Копирайте следния код в 2_vote.js и го запазете.
8. Отвори truffle.js в коренната директория на създадената от теб папка и постави кода по-долу, след което запази файла. Тази конфигурация на трюфела използва ганаш.
9. Стартирайте Ganache в менюто Старт.
10. Внедрявайте смарт договори с Truffle. Ганаш мрежата е дефинирана в truffle.js файл.
11. Обърнете внимание на резултата. Ще видите резултат, подобен на този по-долу. Това е адресът на договора за гласуване. Копирай и постави шестоъгълния низ за по-късна употреба.
Създай . .NET приложения наричат смарт договори
1. В нова директория създайте ново конзолно приложение чрез командата dotnet.
2. Инсталирайте пакета Nethereum.
3. Редактирай Program.cs файл. Заменете стандартния код с този по-долу. Това ще позволи на конзолата да подканява адреси на акаунти и гласове от потребителите. Запази файла.
4. На program.cs г. поставете адреса, който току-що сме записали, на адреса на контакта за разгръщане и запазете файла.
5. Компилирайте приложението.
6. Пуснете приложението.
7. Ще видите, че приложението ви подканва да напишете. Въведете адреса и гласувайте. Можете да копирате адреса на акаунта от графичния интерфейс на Ganache под таба Accounts.
8. Пуснете приложението отново и ще видите, че броят на гласовете се е увеличил.
За Nethereum е лесно да се интегрират смарт договори с всеки . .NET приложения. Тъй като Nethereum е базиран на .NET, той може да се използва за .NET core приложения, . .NET standard, Xamarin, и различни Windows приложения. Използвайки Nethereum, могъщия Ethereum и . NET вече е на ваше разположение!
|