Maher JENDOUBI

Hi, I'm Maher, Development Technologies MVP. I'm blogging about ASP.NET Core and Blazor.

Rendering Medical Images using Blazor and fo-dicom

A few months ago, I was looking for the simplest way to render a DICOM file for the Web using .NET Core. By "the simplest way", I mean using the minimum lines of code. Prerequisites I used the following tools and libraries: Visual Studio 2017 15.8.6 .NET Core SDK 2.1.402 Blazor 6.0.0 fo-dicom.Drawing 4.0.0 What is DICOM? Digital Imaging and Communications in Medicine (DICOM) is the standard for the communication and management of medical imaging information and related data. DICOM is most commonly used for storing and transmitting medical images enabling the integration of medical imaging devices such as scanners, servers, workstations, printers, network hardware, and picture archiving and communication systems...

Using CDNJS with LibMan for ASP.NET Core

The inspiration trigger for writing this blog post was a question from the ASP.NET Core forum community. The question was about the best way of using npm packages in ASP.NET Core. I will not write here about npm but instead, I will describe how to use an alternative new tool for installing Client-Side libraries of an ASP.NET Core Application. This tool is called Microsoft Library Manager (aka LibMan). Prerequisites I used the following tools: Visual Studio 2017 Preview 15.9.0 .NET Core SDK 2.2.100-preview1-009349 What is CDNJS? CDNJS is a free and Open Source Public Web CDN for Web developers where you can find 3403 libraries with 90027 different versions at this moment of...

Blazor Introduction

This blog post might be outdated one day in the future but my intention here to get through the first bits of Blazor even at its alpha release. What is Blazor? Blazor is an experimental .NET web framework using C#/Razor and HTML that runs in the browser with WebAssembly. What is WebAssembly? WebAssembly (abbreviated Wasm) is a binary instruction format for a stack-based virtual machine. Wasm is designed as a portable target for compilation of high-level languages like C/C++/Rust, enabling deployment on the web for client and server applications. WebAssembly 1.0 has shipped in 4 major browser engines. I am using Visual Studio 17.5 Preview 2.0. I installed ASP.NET Core Blazor Language Services...

My Notes from ASP.NET Community Standup - Mar 20, 2018 - ASP.NET Core 2.1 Updates for IIS Hosting

This is the next in a series of blog posts that will cover the topics discussed in the ASP.NET Community Standup. The community standup is a short video-based discussion with some of the leaders of the ASP.NET development teams covering the accomplishments of the team on the new ASP.NET Core framework over the previous week. Within 30 minutes, Scott Hanselman, Damian Edwards, Jon Galloway and an occasional guest or two discuss new features and ask for feedback on important decisions being made by the ASP.NET development teams. Each week the standup is hosted live on Google Hangouts and the team publishes the recorded video of their discussion to YouTube for later reference. The guys answer your...

MVP Global Summit 2018

The 2018 Summit took place March 4-7 at the Microsoft headquarters in Bellevue and Redmond, Washington - and while every Summit gives our community the chance to shine, this one holds a special significance. We’re celebrating 25 years of the MVP Award Program! Pre-Day I arrived on Saturday at Seattle. I had the chance and especially the time to visit Downtown Seattle. The weather was very nice. Day 1 Day 2 #mvpbuzz #MVPSummit USA-India-DominicanRep-Tunisia @PoojaBrs @yhorbymatias pic.twitter.com/1d72We3Fyk— Mark Radacz (@MarkRadacz) March 6, 2018 Day 3 I was delighted to meet Scott Guthrie ( Executive Vice President of the Cloud and Enterprise Group in Microsoft ) at Microsoft Redmond Campus yesterday during the Global MVP Summit 2018. Day...

ASP.NET Core Benchmarking on Debian using Docker

I am using Windows Server 2016 VM on Azure. The size of the VM is a Standard D4s v3 (4 vcpus, 16 GB memory). I have installed Docker for Windows inside the VM. It means that I am running containers on Docker for Windows on HyperV on Windows Server 2016 on Azure VM! Disclaimer : I am trying to learn how to do ASP.NET Core benchmarks using Docker. This could help developers to benchmark their Web Apps in order to improve their performance. PS C:\Users\Maher\Documents> git clone https://github.com/aspnet/benchmarks.git Cloning into 'benchmarks'... remote: Counting objects: 4957, done. remote: Compressing objects: 100% (113/113), done. remote: Total 4957 (delta 96), reused 101 (delta 55)...

ASP.NET Core Benchmarking on Ubuntu using Docker

Disclaimer: I am trying to learn how to do ASP.NET Core benchmarks using Docker. This could help developers to benchmark their Web Apps in order to improve their performance. docker build -t benchmarks -f Dockerfile ../../ param( [string]$ServerIp="", [string]$HardwareVersion="", [string]$Hardware="", [string]$Url="", [string]$Name="" ) $PostgreSql='--postgresql "Server=TFB-database;Database=hello_world;User Id=benchmarkdbuser;Password=benchmarkdbpass;Maximum Pool Size=1024;NoResetOnClose=true;Max Auto Prepare=3"' $MySql='--mysql "Server=TFB-database;Database=hello_world;User Id=benchmarkdbuser;Password=benchmarkdbpass;Maximum Pool Size=1024;SslMode=None;ConnectionReset=false"' $MsSql='--mssql "Server=TFB-database;Database=hello_world;User Id=sa;Password=Benchmarkdbp@55;Max Pool Size=100;"' $MongoDb='--mongodb "mongodb://TFB-database:27017?maxPoolSize=1024"' # "--network host" -...

ODP.NET Core and ODAC 12.2c R1 Update 1

The same day last week, I attended an Ask The Oracle Masters (or AskTOM for short) session, where you get definitive answers for your Oracle questions from experts that work directly on the database products within Oracle Corporation. The session was about ODP.NET Core and ODAC 12.2c R1 Update 1. The webcast was presented by Christian Shy (christian.shay@oracle.com), .NET Product Manager at Oracle and Alex Keh (alex.keh@oracle.com), Senior Principal Product Manager from Oracle. The first .NET @OracleAskTOM Office Hours starts in 2 hours (9am PT). Learn about https://t.co/Zn0Rz2SBM2 Core and ODAC 12.2c R1 Update 1. Ask the experts your questions. https://t.co/56yhxEznyG pic.twitter.com/0BFfdwNAFG&...

ASP.NET Core Pre-Benchmarking on Ubuntu using Docker

This blog post is about yak shaving before starting learning how to do benchmarks of ASP.NET Core on Ubuntu using Docker for Windows. Disclaimer: I am trying to learn how to do ASP.NET Core benchmarks using Docker. This could help developers to benchmark their Web Apps in order to improve their performance. https://t.co/wKeQMvCSjUI will update it based on your questions and feedback. When it's good enough I will add it in the main readme.— Sébastien Ros (@sebastienros) January 23, 2018 PS C:\Program Files\PowerShell\6.0.2> docker pull ubuntu:latest latest: Pulling from library/ubuntu 22dc81ace0ea: Pull complete 1a8b3c87dba3: Pull complete 91390a1c435a: Pull complete 07844b14977e: Pull complete b78396653dae: Pull complete...

SimplCommerce in Action

It has been a month that I didn't blog because I was looking for an awesome open source project on which I could contribute and apply some of my knowledge on both ASP.NET Core and .NET Core. First, I went to github and did a lot of research about CMS projets built on asp.net core. Among my criteria, the project which I'm looking for should be freshly started that I can easily embrace it. Fortunately, I find SimplCommerce! You can see code here : https://github.com/simplcommerce/SimplCommerce You can chat with the developers of SimplCommerce in the gitter channel : The technologies that are used to build it include: ASP.NET MVC Core 1.1.0 on .NET...

BuildVision Extension for Visual Studio

BuildVision is a Visual Studio extension to visualize the building process. It's my favorite extension. I recommend it for all .NET developers. You can grab the extension from the Visual Studio Gallery (latest release). All releases and pre-releases are available in Releases. Supports Visual Studio 2013, 2015, 2017. #BuildVision 2.1.0- Performance improvements- Warning indicators- UpToDate Hiding Feedback greatly appreciated!https://t.co/GKj9WOONCa— Stefan Kert 🇪🇺 (@StefanKert) October 21, 2017 Installation and startup Install the VSIX package and restart Visual Studio. Open BuildVision tool window from Main Menu: "View → Other Windows → BuildVision". Description BuildVision activates when Visual Studio starts the process of building, rebuilding or cleaning projects (solution). BuildVision tool window and Visual Studio Status Bar displays the...

ASP.NET Core 2.0 in Docker

In this tutorial, you will learn how to create a Docker image with an ASP.NET Core 2.0 application and how to run your application on any Docker host. Inspiration I was inspired by the following David Fowler's tweet : If you're not using docker for something and you're a developer, you need to. #docker— David Fowler (@davidfowl) October 7, 2017 Disclaimer I was looking for a blog post on how to create a Docker image with an ASP.NET Core 2.0 application. It was hard to find a blog post that covers the baby steps how to do it. Fortunately, I found an awesome video of Mark Rendle doing a lab of ASP....