neo-sharp

neo-sharp

  • Documentação
  • Português (Brasil)
    • English

›NEO-Sharp

Início

  • Introdução
  • Guia básico
  • Guia intermediária
  • Guia avançada

Blockchain

  • Block
  • Blockchain
  • Criptografia
  • Hash
  • Cabeçalho
  • Saída de transação não utilizada

NEO

  • Compilador
  • Consensos
  • Contrato
  • Taxas
  • GAS
  • NEO VM
  • NEP
  • Protocolo da Rede
  • Nós
  • RCP
  • Tipos de Transação
  • Verificação
  • Carteiras
  • Witness

NEO-Sharp

  • Módulos
  • Application Module
  • Configuration Module
  • Core Module
  • Logging Module
  • Persistence Module
  • Serialization Module
  • Wallet Module

Desenvolvimento

  • Melhores práticas
  • Estilo de código
  • Injeção de Dependência
  • Teste Unitário

Ferramentas

  • .NET Core
  • Documentation
  • Git / GitHub
  • Ferramentas NEO
  • Plataforma

Módulos

VM

Criando novo módulo

Crie uma nova pasta no projeto NeoSharp.Core seguindo a seguinte estrutura de nome 'NomeModulo';

Exemplo:
NeoSharp.Core/Persistence

Crie uma interface contendo especificação do seu módulo

Exemplo:
NeoSharp.Core/Persistence/IRepository.cs

Crie implementações da sua interface. Em NEO-Sharp nós temos duas implementações para a mesma interface, ou seja, podemos facilmente trocar qual das implementações utilizar.

Exemplo:
NeoSharp.Persistence.RedisDB/RedisDbRepository.cs
NeoSharp.Persistence.RocksDB/RocksDbRepository.cs

Crie a classe para registrar sua injeção de dependência no projeto NeoSharp.Application/DI.

Exemplo:
NeoSharp.Application/DI/PersistenceModule.cs

Pode verificar o seu arquivo de configuração e escolher qual das implementações utilizar, use 'containerBuilder.RegisterSingleton' ou 'containerBuilder.Register' para registrar.

Exemplo:

var cfg = PersistenceConfig.Instance();

switch (cfg.Provider)
{
    case RedisDbConfig.Provider:
        {
            containerBuilder.RegisterSingleton<RedisDbConfig>();
            containerBuilder.RegisterSingleton<IRepository, RedisDbRepository>();
            containerBuilder.RegisterSingleton<IRedisDbContext, RedisDbContext>();
            break;
        }

    case RocksDbConfig.Provider:
        {
            containerBuilder.RegisterSingleton<RocksDbConfig>();
            containerBuilder.RegisterSingleton<IRepository, RocksDbRepository>();
            containerBuilder.RegisterSingleton<IRocksDbContext, RocksDbContext>();
            break;
        }

    default:
        throw new Exception($"The persistence configuration contains unknown provider \"{cfg.Provider}\"");
}

Para registrar seu módulo dentro da aplicação adicione o método 'containerBuilder.RegisterModule' em 'NeoSharp.Application/Program.cs'

Exemplo:
containerBuilder.RegisterModule<PersistenceModule>();

Em NEO-Sharp, teste unitário e obrigatório, para mais informação UNIT TEST

← WitnessApplication Module →
  • VM
  • Criando novo módulo
neo-sharp
Docs
Getting StartedGuides
Community
DiscordRedditFacebookTwitterMedium
More
NEOCoZStar