So early this morning I did a live lesson on WPF that basically touched on design, MVVM, data-binding and commands. This video is definitely considered long, however my goal was not just to teach my viewers a certain way of doing it and leaving it at that, but to also go through other ways and why it's wrong. For example one thing I touch on is why the ideology that no code should exist in your code-behind is a good one.
So here's the YouTube version of the lesson with the only edits being done to the start/end times. 😁
C# - WPF Basics (In-Depth Lesson/Stream)
Source as of current lesson: https://github.com/reikotechnology/chatty
I have been working on an API which I will be using for:
I got the base working and wanted to share it.
The API is made in .NET Core 2.1 using Pomelo Entity Framework and FluentValidation
The project can be found on my Github: https://github.com/Sedatb23/EpochApi
A nice read about microservices. Even though they mention .NET a lot, the content is still pretty relevant with other languages.
https://docs.microsoft.com/en-us/dotnet/standard/microservices-architecture/index
Also, I uploaded the e-book as attachment as I am not sure about file storage on the server, I will provide you guys with a direct link to the download. (Which is also available on the overview page)
[Attachment].NET Microservices - Architecture for Containerized .NET Applications.pdf
Getting started with Blazor and Electron.NET
Background Information:
What is Blazor?
From the Blazor Github, Blazor is "an experimental .NET web framework using C#/Razor and HTML that runs in the browser via WebAssembly"
What is Electron.NET?
From the Electron.NET Github, "Electron.NET is a wrapper around a "normal" Electron application with an embedded ASP.NET Core application".
Perquisites:
So that this article does not get dated with irreverent information quickly I will be using information from other resources.
getting started for blazor
node.js v8.6.0+
electron-packager --global
Sample Project Github:
If you do not want to follow the steps below, or just want to check out the code I reproduced the following steps in a repo. Besure you all the required perquisites
https://github.com/mandrepont/blazetron
Setting up a simple project:
If you have not done so, check out the getting started for blazor to install perquisites for this tutorial
Create a new Blazor (ASP.NET Core hosted) project
Install ElectronNET.API
PM> Install-Package ElectronNET.API
In %projectname%.Server/Program.cs change BuildWebHost to use Electron
public static IWebHost BuildWebHost(string[] args) =>
WebHost.CreateDefaultBuilder(args)
.UseElectron(args)
.UseStartup<Startup>()
.Build();
In %projectname%.Server/Startup.cs change Configure to open Electron
app.UseBlazor<Client.Program>();
Task.Run(async () => await Electron.WindowManager.CreateWindowAsync());
Add cli tooling to %projectname%.Server
<ItemGroup>
<DotNetCliToolReference Include="ElectronNET.CLI" Version="0.0.9" />
</ItemGroup>
Note at the time the current version is 0.0.9
dotnet restore
Install electron packager
sudo npm install electron-packager --global
Init and Run
dotnet electronize init
dotnet electronize start
Credits:
I claim none of this work as my own and proudly support the work of both the aspnet team on Blazor and the team developing Electron.NET, this post is intended to raise awareness of some of the possibilities for a prototype. Most of the "Setting up a simple project" is directly from both Electron.NET's and Blazor's githubs.