Asp.Net

Razor UI Class Library with Dynamic Area Name

This blog post is describing configuration setup required to support dynamically generated area names for Razor Class Library Pages. This approach is used in AdminUI for DbLocalizationProvider for Asp.Net Core.…

Keep reading

Alternative Localization for Asp.Net Core Applications

Asp.Net Core Built-In Support This is code fragment from official documentation how to localize content using built-in functionality. App Content Localization [Route("api/[controller]")] public class AboutController : Controller { private readonly IStringLocalizer<AboutController> _localizer; public AboutController(IStringLocalizer<AboutController> localizer) { _localizer = localizer; } [HttpGet] public string Get() { return _localizer["About Title"]; } } And if you are working with Html content that shouldn't be escaped during rendering - you are using IHtmlLocalizer implementation that returns LocalizedHtmlString instance. public class BookController : Controller { private readonly IHtmlLocalizer<BookController&…

Keep reading

DbLocalizationProvider step closer to front-end

Along with other smaller bug fixes, database-driven localization provider for EPiServer got closer to front-end. We joined forces together with my old pal and friend Arve Systad and made it possible to add translations to client side resources as well. Setup So setup for the client-side resource localization with help of DbLocalizationProvider plugin is more or less straight forward. You will need to install DbLocalizationProvider.EPiServer.JsResourceHandler package from EPiServer feed and add corresponding <script> include in your markup file to fetch translations from the server: <script…

Keep reading

Small Enhancement for Feature Folders

Great colleague of mine Māris Krivtežs wrote blog post about feature folders describing code organization into folders by features or functional areas rather than technology or different grouping. However, one of cons from Maris' approach we couldn't reconcile with - name of the sub-feature folder needs to follow Mvc controller naming convention. "Another issue is related to the sub-feature folder naming. Sub-feature folder still should be called with the same name as a controller." So I made tiny adjustment to the view engine worth sharing. Adjusted code is…

Keep reading

Baking Round Shaped Software

This is the story how I discovered clean, understandable and maintainable software architecture. Why it's round shape and not pentagon, hexagon or any other *-gon shape? In this blog post I'll guide you through my journey. This part will cover theoretical side. Next blog post will map it to the code. Classical Architecture Agree that we all have been taught about N-tier/layer application software in high schools, universities or between the pages of some software development magazine?! Where order and most importantly dependency direction was stressed as one of…

Keep reading