Category Archives: .NET

A deep-dive into WinUI 3 in desktop apps – Windows Developer Blog

XAML Islands was our first solution to enable developers to use UWP XAML inside their desktop (Win32) apps. Within a couple of months after the release of XAML Islands, behavioral insights and customer interviews raised some signals about how developers were using it. We discovered that a significant number of apps were using XAML for […]

情報源: A deep-dive into WinUI 3 in desktop apps – Windows Developer Blog



情報源: Excel spreadsheet library for .NET Framework/Core – EPPlus Software


C#: Code DomainでRoslynコンパイラを使用する


GitHub – aspnet/RoslynCodeDomProvider: Roslyn CodeDOM provider

NuGet packages · dotnet/roslyn Wiki · GitHub(RoslynのバージョンとC#バージョンとの対応)

C# コンパイラを使用してプログラムによってコードをコンパイルする方法

上のサンプルをRoslyn CodeDom providerを使用するように変更した。

using System;
using System.Drawing;
using System.Windows.Forms;
using System.CodeDom.Compiler;
using System.Diagnostics;

namespace CodeDomainSample
    public partial class Form1 : Form
        public Form1()

        private void button1_Click(object sender, System.EventArgs e)
            CodeDomProvider codeProvider = new Microsoft.CodeDom.Providers.DotNetCompilerPlatform.CSharpCodeProvider();
            string Output = "Out.exe";
            Button ButtonObject = (Button)sender;

            textBox2.Text = "";
            System.CodeDom.Compiler.CompilerParameters parameters = new CompilerParameters();
            //Make sure we generate an EXE, not a DLL
            parameters.GenerateExecutable = true;
            parameters.OutputAssembly = Output;
            parameters.CompilerOptions = "-langversion:7.3"; // C#のバージョンを指定する。
            CompilerResults results = codeProvider.CompileAssemblyFromSource(parameters, textBox1.Text);

            if (results.Errors.Count > 0)
                textBox2.ForeColor = Color.Red;
                foreach (CompilerError CompErr in results.Errors)
                    textBox2.Text = textBox2.Text +
                                "Line number " + CompErr.Line +
                                ", Error Number: " + CompErr.ErrorNumber +
                                ", '" + CompErr.ErrorText + ";" +
                                Environment.NewLine + Environment.NewLine;
                //Successful Compile
                textBox2.ForeColor = Color.Blue;
                textBox2.Text = "Success!";
                //If we clicked run then launch our EXE
                if (ButtonObject.Text == "Run") Process.Start(Output);

        private void button2_Click(object sender, EventArgs e)
            button1_Click(sender, e);


Nullable Reference Types: Contexts and Attributes – A Look at New Language Features in C# 8 – .NET Tools Blog.NET Tools Blog

Our C# 8 language features series is coming to an end. Before we jump into nullable contexts and nullable attributes, here is a quick (updated) recap of our roadmap: Indices, Ranges, and Null-coalescing Assignments Switch Expressions and Pattern-Based Usings Recursive … Continue reading →

情報源: Nullable Reference Types: Contexts and Attributes – A Look at New Language Features in C# 8 – .NET Tools Blog.NET Tools Blog


Nullable Reference TypesはC#8.0で追加されました。これは将来のC#でのNull全面不許可への第一歩です。Nullable Reference TypesはNull全面不許可における例外を設けるために作られたものです。なので、古いクラスライブラリなどどうしようも無い部分はあるのですが、C#erは極力Nullを避けるコーディング習慣を身につけるように努力した方が良いと思います。

build 2020 – The Journey to One .NET

Join us for the Microsoft Build 48-hour, digital event to expand your skillset, find technical solutions, and innovate for the challenges of tomorrow.

情報源: MyBuild – The Journey to One .NET


Build 2020関連まとめ #msbuild



SQL Server/SQL Database関係はSE雑記をご覧ください。


Announcing .NET 5 Preview 4 and our journey to one .NET

今秋登場する.NET 5はLTSとはならずPreview Buildとなり、来年秋に登場する.NET 6が.NET 統一プラットフォームとしては初めてのLTSになると決まりました。詳しくは上を参照。

ASP.NET Core updates in .NET 5 Preview 4

Announcing Entity Framework Core 5.0 Preview 4

PowerShell Team May 2020 Update

The F# development home on GitHub is now dotnet/fsharp

C# Today & Tomorrow | Microsoft Build 2020 | Channel 9

Welcome to C# 9.0

F# 5 and F# tools update

Introducing YARP Preview 1

Using Visual Studio Codespaces with .NET Core

Introducing Project Tye

Continue reading Build 2020関連まとめ #msbuild

Introducing C# Source Generators

We’re pleased to introduce the first preview of Source Generators, a new C# compiler feature that lets C# developers inspect user code and generate new C# source files that can be added to a compilation. This is done via a new kind of component that we’re calling a Source Generator.

情報源: Introducing C# Source Generators | .NET Blog


多分一生直接使わない人がいるだろうし、使う人はめっちゃ使うことになるソースジェネレーターが.NET 5で追加になるようです。実際に自分でソースジェネレーターを書くことはなくても、今後何らかのフレームワークを使う場合にはこのソースジェネレーターのお世話になることは間違いないです。