You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

README.md 2.0KB

Luticate2 API Utils

Getting started

NuGet.Config

<?xml version="1.0" encoding="utf-8"?>
<configuration>
  <packageSources>
    <add key="nuget.org" value="https://api.nuget.org/v3/index.json" protocolVersion="3" />
    <add key="rthoni" value="http://nuget.rthoni.com" protocolVersion="2" />
  </packageSources>
</configuration>

project.json

{
    ...
    dependencies": {
        "Luticate2.Utils": "0.5.*",
        ...
    }
    ...
}

appsettings.json

{
    ...
    "ConnectionStrings": {
        "default":  "User ID=POSTGRES_USER;Password=POSTGRES_PASSWORD;Host=POSTGRES_HOST;Port=5432;Database=POSTGRES_DB;Pooling=true;",
        ...
    }
    ...
}

Startup.cs

public void ConfigureServices(IServiceCollection services)
{
    // ...

    // MUST be before addMvc()
    services.AddLuticateUtils(options => options.Version = "dev");

    // ...
    
    //The data access classes using YourDbContext need to be added as scoped
    services.AddDbContext<YourDbContext>(options => // Replace YourDbContext with your own database context
    {
        options.UseNpgsql(Configuration.GetConnectionString("default"));
        options.UseInternalServiceProvider(new ServiceCollection()
            .AddEntityFrameworkNpgsqlLuticate() // MUST be before AddEntityFrameworkNpgsql()
            .AddEntityFrameworkNpgsql()
            .BuildServiceProvider());
    }, ServiceLifetime.Transient);

    services.AddMvc()
        .AddLuticateUtils();
        
    // ...
}

public void Configure(IApplicationBuilder app, IHostingEnvironment env, ILoggerFactory loggerFactory)
{
    // ...

    // MUST be before useMvc()
    app.UseLuticateUtils();

    // ...
}

Usage

See WebApiUtils project for an example and starter-angular-material for a frontend.

NuGet Deployment

  • Set version in project.json

  • Build package: dotnet pack --configuration Release

  • Deploy package: nuget push -Source http://nuget.rthoni.com bin/Release/Luticate2.Utils.VERSION.nupkg