C#开发以太网智能契约的基础上。网

作者:jiang      发布时间:2021-04-26      浏览量:0
如果我们想要构建一个分散的应用程序(DA

如果我们想要构建一个分散的应用程序(DAPP),除了开发智能契约之外,我们通常还需要使用其他开发语言来为用户提供操作智能契约的用户界面,例如开发网页、移动应用程序或桌面应用程序。所有这些代码都需要与以太网广场交互。

以太网指定每个节点需要实现的JSONRPCAPI应用程序开发接口,该接口与传输无关。应用程序可以通过各种通信机制(如HTTP、WebSocket或IPC)使用接口协议来操作以太网节点。

理论上,您可以使用任何语言开发基于JSONRPC接口的分散应用程序,但目的是提高开发效率。更好的方法是使用特定于语言的JSONRPC封装库来封装JSONRPC的协议细节,并帮助开发人员专注于业务逻辑的实现。

是以太网正式推荐的一个.NET开发包,用于在.NET应用程序中支持对以太网的访问。在本课程中,我们将使用C#语言来开发基于Neretum开发工具包的.net应用程序。

本课程的目的是帮助.NET工程师快速掌握开发以太网应用程序的技能,同时还附带一些以太网的核心概念,例如帐户、事务、智能契约等等。

1.嗨。本章将通过开发一个简单的.NET应用程序来解释使用C#开发以太网应用程序的最简单过程。通过本部分的研究,您可以在.NET应用程序中引入基本的以太网支持。

2。“帐户管理”一章

详细描述了以太网Square的帐户管理接口。如果您有兴趣开发一个集中式钱包应用程序,或者您需要在您自己的站点上创建一个帐户(例如,您希望增加对该站点以太网支付的支持),这部分内容可能会有很大帮助。

3.“理解状态和事务”一章主要解释了以太网的事务操作接口,并介绍了一些重要的概念,如状态、裸事务、气体等,这一部分将帮助您解决网络应用程序与以太网交互的大部分问题。

4.智能契约的开发和应用本章将通过ERC 20令牌合同的开发、编译、代码生成、部署和交互的完整过程,说明使用C#.net操作单独契约的方法。如果要向应用程序添加令牌支持,则这部分内容是必要的。

5.关于过滤器和事件的章节重点介绍了以太网的通知机制,以及如何在.NET应用程序中使用过滤器来监视块和事务的生成以及合同事件的触发。

课程内容示例:使用C#获取节点版本信息

我们只需根据以太网RPC接口的要求在C#代码中发送http请求包。您可以使用任何您喜欢的http库,甚至可以直接使用套接字来调用以太网JSONRPCAPI。

例如,以下代码使用内置的.net HttpClient类访问以太网节点,注意代码中的注释:

使用系统;使用System.ThreadingT;使用System.Net.Http;使用SystemText;命名空间DIY{class Program{静态voidmain(String[]args){Task){Task。运行(异步()=>{//使用包装包装异步请求HttpClient httpClient=newHttpClient();//请求消息:JSON格式的字符串有效载荷=“{\”jsonrpc\:\“异步请求\”:\“web3_clientVersion\”,\“params”:[],\“id\”:7878};//将请求消息StringContent内容=新的StringContent(有效载荷,Encoding.UTF 8,“application/json”)提交到节点)HttpResponseMessage rsp=等待httpClient.PostAsync(“http://localhost:8545”,内容“);//提取并显示响应报文:json格式的字符串String rett=WAIT rsp.Content.ReadAsStringAsync();Console.WriteLine(Ret);}.格式的字符串();

课程为每个知识点提供了相应的预设代码,您可以在实验环境的~/repo目录中查看这些代码。

如果您想要快速开始使用。