EZms.UI 1.0.12

dotnet add package EZms.UI --version 1.0.12
NuGet\Install-Package EZms.UI -Version 1.0.12
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="EZms.UI" Version="1.0.12" />
For projects that support PackageReference, copy this XML node into the project file to reference the package.
paket add EZms.UI --version 1.0.12
#r "nuget: EZms.UI, 1.0.12"
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
// Install EZms.UI as a Cake Addin
#addin nuget:?package=EZms.UI&version=1.0.12

// Install EZms.UI as a Cake Tool
#tool nuget:?package=EZms.UI&version=1.0.12

EZMS.UI

This is the User interface part of the EZms CMS platform, for more information on using EZms as a whole, please to to EZms or read the EZms wiki

To enable the UI you need to add the following to your .NET Core startup

Note: you will need to have added the EZms.Core middleware and requirements to the startup as well


private readonly CultureInfo[] _supportedCultures = {
    new CultureInfo("sv"),
    new CultureInfo("en")
};

public void ConfigureServices(IServiceCollection services) {
...
    //Example of localization setup, this can be any type of localization as long as it follows the standard localization flow.
    services.AddTransient<IStringLocalizerFactory, JsonStringLocalizerFactory>();
            services.AddTransient<IStringLocalizer, JsonStringLocalizer>();
            services.AddLocalization(options => options.ResourcesPath = $@"{HostingEnvironment.ContentRootPath}\Resources");

    //Request localization 
    services.Configure<RequestLocalizationOptions>(options =>
    {
        options.DefaultRequestCulture = new RequestCulture(culture: DefaultCulture, uiCulture: DefaultCulture);
        options.SupportedCultures = _supportedCultures;
        options.SupportedUICultures = _supportedCultures;
    });

    // ========================================================
    // Add the requirements for DB and EZms.Core middleware here
    // ========================================================

    //This is needed by several parts of the UI
    services.AddSingleton(HostingEnvironment);

    //Authorization
    services.AddTransient<UserManager<IdentityUser>>();

    //EZms automapper, UI and ServiceLocator middleware
    services.SetupEZmsAutomapper()
            .AddEZmsUI()
            .SetupEZmsServiceLocator();

    //Razor page authorization, view localization and data annotation localization
    services.AddRazorPagesOptions(options =>
    {
        options.Conventions.AuthorizePage("/ezms");
        options.Conventions.AuthorizeAreaFolder("EZms", "/EZms");
    })
    .AddViewLocalization()
    .AddDataAnnotationsLocalization()
    .SetCompatibilityVersion(CompatibilityVersion.Version_2_2);
...
}

public void Configure(IApplicationBuilder app, IHostingEnvironment env) {

    app.UseRequestLocalization(new RequestLocalizationOptions {
        DefaultRequestCulture = new RequestCulture(DefaultCulture),
        // Formatting numbers, dates, etc.
        SupportedCultures = _supportedCultures,
        // UI strings that we have localized.
        SupportedUICultures = _supportedCultures
    });

    var locOptions = app.ApplicationServices.GetService<IOptions<RequestLocalizationOptions>>();
    app.UseRequestLocalization(locOptions.Value);
    
    app.UseEZmsAzureFilesProvider(env);
    app.UseAuthentication();

    app.UseStatusCodePages(async context =>
    {
        var response = context.HttpContext.Response;

        //If the requested url contains /ezms you can redirect the user to the ezms specific error page here

        if (response.StatusCode == (int)HttpStatusCode.Unauthorized ||
            response.StatusCode == (int)HttpStatusCode.Forbidden)
            response.Redirect("/EZmsIdentity/Account/AccessDenied");
    });
}
Product Compatible and additional computed target framework versions.
.NET net5.0 was computed.  net5.0-windows was computed.  net6.0 was computed.  net6.0-android was computed.  net6.0-ios was computed.  net6.0-maccatalyst was computed.  net6.0-macos was computed.  net6.0-tvos was computed.  net6.0-windows was computed.  net7.0 was computed.  net7.0-android was computed.  net7.0-ios was computed.  net7.0-maccatalyst was computed.  net7.0-macos was computed.  net7.0-tvos was computed.  net7.0-windows was computed.  net8.0 was computed.  net8.0-android was computed.  net8.0-browser was computed.  net8.0-ios was computed.  net8.0-maccatalyst was computed.  net8.0-macos was computed.  net8.0-tvos was computed.  net8.0-windows was computed. 
.NET Core netcoreapp2.2 is compatible.  netcoreapp3.0 was computed.  netcoreapp3.1 was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

NuGet packages

This package is not used by any NuGet packages.

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last updated
1.0.12 635 2/26/2020
1.0.11 580 2/26/2020
1.0.10 598 2/5/2020
1.0.9 597 2/3/2020
1.0.8 565 2/3/2020
1.0.7 664 2/2/2020
1.0.6 786 1/25/2020
1.0.5 583 1/22/2020
1.0.4 591 11/9/2019