chrischinchilla

2 min read - Posted 01 Mar 19

Nethereum - An open source .NET integration library for blockchain

Nethereum is the .Net integration library for Ethereum, simplifying the access and smart contract interaction with Ethereum nodes both public or permissioned like Geth, Parity or Quorum.

Features

Nethereum provides:

  • JSON RPC / IPC Ethereum core methods.
  • Geth management API (admin, personal, debugging, miner).
  • Parity management API.
  • Quorum integration.
  • Simplified smart contract interaction for deployment, function calling, transaction, event filtering and decoding of topics.
  • Unity 3d integration.
  • ABI to .Net type encoding and decoding, including attribute based for complex object deserialization.
  • HD wallet
  • Transaction, RLP and message signing, verification and recovery of accounts.
  • Libraries for standard contracts Token, ENS and Uport
  • Integrated TestRPC testing to simplify TDD and BDD (Specflow) development.
  • Key storage using Web3 storage standard, compatible with Geth and Parity.
  • Simplified account life cycle for both managed by third party client (personal) or stand alone (signed transactions).
  • Low level Interception of RPC calls.
  • Code generation of smart contracts services.

Getting started

Install .Net

Nethereum works with .Net Core or .Net Framework (from 4.5.1 upwards).You need to have the .Net SDK installed. For new starters or Mac and Linux users we recommend .Net core.

Create your app

Create a project using the .Net CLI or create a project in Visual Studio.

dotnet new console -o NethereumSample
cd NethereumSample
Add package reference to Nethereum.Web3
dotnet add package Nethereum.Web3
Open your IDE

Visual Studio Code or Visual Studio are both good choices for .Net development. Other good IDEs are also available (Jet Brains Rider etc).

Open the Program.cs file in the IDE or editor.

Code First Steps

First, the code adds required namespaces for Nethereum:

using Nethereum.Web3;

Next it creates an instance of Web3, with the infura url for mainnet.

var web3 = new Web3("https://mainnet.infura.io");

And then you can use the Ethereum API via Nethereum to interact with accounts and transactions.

Next Steps

Created with Sketch.Content is"CC-BY-SA 4.0" licensed
Article On-chain
Article Author

Chris Ward

Technical Content Lead

64

11

5

0 Comments
Related Articles
Kaleido - the Blockchain Business Cloud

Gartners 2018 CIO Survey revealed that only 1% of surveyed respondents indicated any kind of blockchain adoption within their organizations. Kaleido fixes that. Kaleido is a Blockchain Business Cloud that radically simplifies the creation and operation of private blockchain networks. Offered in collaboration with AWS, Kaleido is the first Software-as-a-Service featuring Ethereum packages Geth and Quorum. Kaleido allows enterprises to build out consortia bootstrap the private blockchain network.

Chris Ward

01 Mar 19

Pantheon - The Enterprise Ethereum Client

Pantheon is a suite of ETH-based services created by PegaSys, and aims to create an ethereum client that develops its enterprise-focused features in lock-step with the evolution of the public Ethereum blockchain. Pantheon helps enterprises profit from the Ethereum public blockchain while explicitly following the Enterprise Ethereum Alliance (EEA) standards. Pantheon is focused on being fully interoperable with other Ethereum technology including Geth, Parity, etc. Pantheon uses the Apache 2.0 op

Chris Ward

01 Mar 19