Bu makale makine çevirisi ayna makalesidir, orijinal makaleye geçmek için lütfen buraya tıklayın.

Görünüm: 16201|Yanıt: 5

Ethereum ve .NET üzerinden Ethereum akıllı sözleşmeleri geliştirmek

[Bağlantıyı kopyala]
Yayınlandı 6.08.2018 13:55:51 | | |
. .NET, hem bağımsız hem de kurumsal geliştiriciler tarafından sevilen eski bir framework'tür. Çeşitli diller arasından seçim yapabilme ve mobilden sunucuya kadar çok çeşitli yetenekler dahil olmak üzere çok çeşitli platformlara dağıtma yeteneği . .NET, çeşitli uygulamalar için harika bir seçim haline geliyor. Yine de. .NET çok şey yapıyor, ama aynı zamanda hiçbir şey yapmadığı da söylenebilir. Örneğin, . .NET (Silverlight kullanmıyorsan...... ), ve var da değildir. .NET dilleri destekliyor, bu da geliştiricilerin akıllı sözleşmeler yazmasını sağlıyor.

Akıllı sözleşmelerin geliştirme dili solidity'dir. Solidity, faaliyet gösterdiği ortamla ilgili birçok şeyi varsayan amaca özel bir dildir ve blokzincir teknolojisiyle çok yakından entegre edilmiştir. İşte bu varsayımsal özellikler diğer dilleri dışlar.

Akıllı sözleşmenin kendisi hikayenin sadece yarısı. Uygulamalar için akıllı sözleşmelerin RPC üzerinden çağrısı gerekir. İşte burada Web3 müşterileri devreye giriyor. Web3 istemcisi, sadece istemci uygulamasının Ethereum üzerinde çalışan akıllı sözleşmelerle arayüz kurmasını sağlayan bir istemci uygulamasıdır; yani belirli bir dil var olduğu sürece Ethereum ile de arayüz kurabilir.

Için. .NET için en önemli şey Nethereum adlı bir proje. (Nethereum, .NET ve Ethereum için bir portaldır ve adres:https://nethereum.com/)。 Bu kütüphane, Web3.js tarafından sağlanan aynı işlevselliği çoğaltmaya çalışır; bu da tarayıcılarda ve NodeJS'de çalışan JavaScript uygulamalarına benzerdir.

Bu eğitimde, Ganache'ye akıllı bir sözleşme göndereceğiz ve ardından . NET çekirdeği basit bir . .NET uygulamaları akıllı sözleşmelerle arayüz için.

Akıllı sözleşme oluşturun ve yayınlayın

1. Ethereum geliştirme için çok faydalı bir özel blok zinciri olan Ganache'i indirip kurun.

Bağlantı girişi görünür.

2. Bir terminal, komut isteği veya Powershell oturumunda Truffle'ı yükleyin. Truffle, akıllı sözleşmelerin sağlamlık geliştirmesini kolaylaştıran bir çerçeve ve yardımcı araç setidir. Aşağıdaki komutu tamamlamak için NPM kullanın.



3. Bir klasör oluşturun ve bu klasörün altında truffle init çalıştırın



4. Truffle bazı yeni klasörler oluşturacak, sözleşme, test ve taşıma. Sözleşmeler klasöründe yeni bir dosya Vote.sol oluşturun.

5. Aşağıdaki kodu yeni oluşturulan Vote.sol'a yapıştırın ve dosyayı kaydedin. Bu akıllı sözleşme yalnızca 2 adayın kullandığı oy sayısını kaydeder. Sözleşme, mesaj gönderen (yani hesap adresi) seçmen olarak kullanılır. Her hesap başına sadece 1 oy hakkı var.



6. Göç klasöründe 2_vote.js adlı yeni bir dosya oluşturun.

7. Aşağıdaki kodu 2_vote.js kopyalayın ve kaydedin.


8. Oluşturduğunuz klasörün kök dizininden truffle.js açın ve aşağıdaki kodu yapıştırın, ardından dosyayı kaydedin. Bu Trüf konfigürasyonu Ganache kullanır.



9. Başlat menüsünden Ganache'yi başlat.

10. Truffle ile akıllı sözleşmeler kur. Ganaj ağı truffle.js dosyada tanımlanmıştır.


11. Çıktıya dikkat edin. Aşağıdaki çıkışa benzer bir çıkış göreceksiniz. Bu, oy kullanma sözleşmesinin adresidir. Altıgen diziyi daha sonra kullanmak için kopyalayıp yapıştır.


Bir . .NET uygulamaları akıllı sözleşmeleri çağırır

1. Yeni bir dizinde, dotnet komutunu kullanarak yeni bir konsol uygulaması oluşturun.


2. Nethereum paketini yükleyin.


3. Dosyayı Program.cs düzenleyin. Varsayılan kodu aşağıdaki kodla değiştirin. Bu, konsolun hesap adreslerini ve kullanıcı oylarını sormasına olanak tanır. Dosyayı kaydet.


4. program.cs üzerine, az önce kaydettiğimiz adresi dağıtım iletişim adresine yapıştırın ve dosyayı kaydedin.


5. Uygulamayı derleyin.


6. Uygulamayı çalıştır.


7. Uygulama size yazmanızı öneriyor. Adresi girin ve oy verin. Hesap adresini Ganache arayüzünden Hesaplar sekmesinden kopyalayabilirsiniz.


8. Uygulamayı tekrar çalıştırın ve oyların arttığını göreceksiniz.


Nethereum için, akıllı sözleşmeleri herhangi bir . .NET uygulamaları. Nethereum, .NET tabanlı olduğu için .NET çekirdek uygulamaları için kullanılabilir. .NET standardı, Xamarin ve çeşitli Windows uygulamaları gibi uygulamalarda bulundu. Nethereum, güçlü Ethereum ve . NET artık hizmetinizde!


Yayınlandı 13.10.2020 17:17:23 |
Patron, çok iyi yazdın, bazı sorularım var. 1. ABI dosyanız nasıl oluşturulur? Sözleşme kodunu kopyaladıktan sonra, VSCode'un F5 ile derleyerek oluşturulan abi dosyalarının hepsi çift tırnak işaretli oluyor ve sonra bunları koda gömmek sorunlu olacak, sizinki ise tek tırnak içinde. 2. Kodum kopyası Web3 web3 = yeni Web3 (url); Bu kod satırı "Web3 bir isim alanıdır, ama bir tür olarak kullanılır" şeklinde bir hata verir ve değişiklik önerisi ise IWeb3 olarak değiştirilmektir. Çok acil! Umarım Tanrı cevap verebilir. QQ ile iletişime geçmek için sabırsızlanıyorum: 1206814310 (sadece danışmanlık ve genellikle rahatsız etmemek) gerçekten acil! Çok teşekkür ederim!
Yayınlandı 6.01.2022 12:45:19 |
Ethereum ve .NET ile Ethereum akıllı sözleşmeleri geliştirmeyi öğrenin
Yayınlandı 17.01.2022 14:01:56 |
İyi ki bir tane, öğrenmeyi öğren
Yayınlandı 19.03.2022 16:37:53 |
İyi ki bir tane, öğrenmeyi öğren
Yayınlandı 2.07.2022 11:40:47 |
Bir tane gibi, öğrenmeyi öğren
Feragatname:
Code Farmer Network tarafından yayımlanan tüm yazılım, programlama materyalleri veya makaleler yalnızca öğrenme ve araştırma amaçları içindir; Yukarıdaki içerik ticari veya yasa dışı amaçlarla kullanılamaz, aksi takdirde kullanıcılar tüm sonuçları ödemelidir. Bu sitedeki bilgiler internetten alınmakta olup, telif hakkı anlaşmazlıklarının bu siteyle hiçbir ilgisi yoktur. Yukarıdaki içeriği indirmeden sonraki 24 saat içinde bilgisayarınızdan tamamen silmelisiniz. Programı beğendiyseniz, lütfen orijinal yazılımı destekleyin, kayıt satın alın ve daha iyi orijinal hizmetler alın. Herhangi bir ihlal olursa, lütfen bizimle e-posta yoluyla iletişime geçin.

Mail To:help@itsvse.com