rksoftware

Visual Studio とか C# とかが好きです

C#

C# 11 の新機能を確認「 string 定数での Span<char> のパターン マッチ 」

C#

C# 11 の新機能を確認しています。目次は次の記事です。 rksoftware.hatenablog.com 今回は 「 string 定数での Span<vhar> のパターン マッチ 」。公式 Learn の記事は次です。 learn.microsoft.com 記載は 「 C# 11 以降では、次の例のように~ 」から始まる箇所</vhar>…

C# 11 の新機能を確認「 改善された、メソッド グループからデリゲートへの変換 」

C#

C# 11 の新機能を確認しています。目次は次の記事です。 rksoftware.hatenablog.com 今回は 「 改善された、メソッド グループからデリゲートへの変換 」。公式 Learn の記事は C# 11 の新機能の記事しか見つけることができませんでした。 この機能、説明を…

C# 11 の新機能を確認「 "警告ウェーブ 7" 」

C#

C# 11 の新機能を確認しています。目次は次の記事です。 rksoftware.hatenablog.com 今回は 「 "警告ウェーブ 7" 」。公式 Learn の記事は次です。 learn.microsoft.com 新しい警告 ( warning ) が追加されました。型名がすべて英小文字だと警告になります。…

C# 11 の新機能を確認「 auto-default 構造体」

C#

C# 11 の新機能を確認しています。目次は次の記事です。 rksoftware.hatenablog.com 今回は 「 auto-default 構造体 」。公式 Learn の記事は次です。 learn.microsoft.com 「 C# 11 以降では、構造体に初期化されていないフィールドがある場合、~ 」 から…

C# 11 の新機能を確認「 汎用属性 」

C#

C# 11 の新機能を確認しています。目次は次の記事です。 rksoftware.hatenablog.com 今回は 「 汎用属性 」。公式 Learn の記事は C# 11 の新機能のページにしか見つけられませんでした。 この新機能日本語よりも英語の名前の方が分かりやすいと思います。「…

C# 11 の新機能を確認「 リスト パターン 」

C#

C# 11 の新機能を確認しています。目次は次の記事です。 rksoftware.hatenablog.com 今回は 「 リスト パターン 」。公式 Learn の記事は次です。 learn.microsoft.com これは、公式 Learn をさらっと見るだけで特に気になる点は深掘りはしなくても十分把握…

C# 11 の新機能を確認「 未加工の文字リテラル 」

C#

C# 11 の新機能を確認しています。目次は次の記事です。 rksoftware.hatenablog.com 今回は 「 未加工の文字リテラル 」。公式 Learn の記事は次です。 機能を表す言葉が 未加工の文字リテラル で機能名が 生文字列リテラル のようです。両方の言葉を覚えて…

C# 11 の新機能を確認「文字列補間式の改行」

C#

C# 11 の新機能を確認しています。目次は次の記事です。 rksoftware.hatenablog.com 今回は 「 文字列補間式の改行 」。公式 Learn の記事は次です。 記事中の「 C# 11 以降では、補間される式に改行を含めることができます。 」から始まる部分が今回の新機…

C# 11 の新機能を確認「拡張 nameof スコープ」

C#

C# 11 の新機能を確認しています。目次は次の記事です。 rksoftware.hatenablog.com 今回は 「 拡張 nameof スコープ 」。公式 Learn の記事は次です。 メソッドに付ける属性で、そのメソッドのパラメータ名で nameof できます。 ■ 確認 次のようなコードが…

C# 11 の新機能を確認「required 修飾子」

C#

C# 11 の新機能を確認しています。目次は次の記事です。 rksoftware.hatenablog.com 今回は 「 required 修飾子 」。公式 Learn の記事は次です。 クラスや構造体のメンバーを required キーワードで修飾すると必須にできます。必須とは初期化が必須というこ…

C# 11 の新機能を確認「ファイル スコープ型」

C#

C# 11 の新機能を確認しています。目次は次の記事です。 rksoftware.hatenablog.com 今回は 「 ファイルスコープ型 」。公式 Learn の記事は次です。 learn.microsoft.com file という型修飾子が追加されました。アクセス修飾子とは書いてありませんが、アク…

C# 11 の新機能を確認「UTF-8 の文字列リテラル」

C#

C# 11 の新機能を確認しています。目次は次の記事です。 rksoftware.hatenablog.com 今回は 「 UTF-8 の文字列リテラル 」。公式 Learn の記事は次です。 文字列の後ろ ( 閉じの " の後ろ ) に u8 を付けると UTF-8 エンコードの System.ReadOnlySpan<T> が得ら</t>…

C# 11 の新機能 (もくじメモ)

C#

これから C# 11 の新機能を確認していきたいと思います。 この記事はそのための進捗をメモする記事です。確認したら確認記事へのリンクを追加していきます。 C# 11 の新機能一覧 (公式 Learn のページ) ■ 新機能リスト ファイル スコープ型 ジェネリック型数…

C# 11 での破壊的変更、使えなくなった型名を確認する

C# 11 での破壊的変更によって使えなくなった型名があります。 scoped と file です。 このように。 ただし、現実として、考えた場合、上のように Scaped 、 File は OK のようなのでこの影響を受けることはないでしょう。 .NET 6 では scoped 、 file は有…

ある列の値でグルーピングした中で別の項目値が最大の行のリストを作る C# の別の書き方

C#

以前に Power Automate である列の値でグルーピングした中で別の項目値が最大の行のリストを作る記事を書きました。 rksoftware.hatenablog.com この中で C# で書くとということでこんなコードを書きました。 var maxs = values?.GroupBy(x => x.A).Select(x…

Power Automate である列の値でグルーピングした中で別の項目値が最大の行のリストを作る (C# でのGroupBy().Select(OrderByDescending().First())

ある列の値でグルーピングした中で別の項目値が最大の行のリストを作る、非常に良くある処理です。あまりにも頻出しすぎて何度かいたかもうわかりません。 ■ C# で書くとこんな感じのやつです 分かりやすく C# で書くとこんな感じの一文の処理です。 var max…

AsyncMethodBuilder のオーバーライド - C# 2.0 以降の新機能まとめ (C# 10.0 ~ ) (途中)

C#

■ C# 10.0 での新機能 ・AsyncMethodBuilder のオーバーライド (AsyncMethodBuilder override) https://docs.microsoft.com/ja-jp/dotnet/csharp/language-reference/attributes/general#asyncmethodbuilder-attribute 非同期メソッド (async メソッド) をコ…

補間された文字列の改善 - C# 2.0 以降の新機能まとめ (C# 10.0 ~ ) (途中)

C#

■ C# 10.0 での新機能 ・補間された文字列の改善 (ImprovedInterpolatedStrings) https://docs.microsoft.com/ja-jp/dotnet/csharp/language-reference/attributes/general#interpolatedstringhandler-and-interpolatedstringhandlerarguments-attributes ロ…

定数の補間文字列 - C# 2.0 以降の新機能まとめ (C# 10.0 ~ ) (途中)

C#

■ C# 10.0 での新機能 ・定数の補間文字列 (Constant interpolated strings) https://docs.microsoft.com/ja-jp/dotnet/csharp/language-reference/tokens/interpolated#structure-of-an-interpolated-string const string の定義で値に文字列補間が使えるよ…

ラムダの機能強化 ラムダ属性 - C# 2.0 以降の新機能まとめ (C# 10.0 ~ ) (途中)

C#

■ C# 10.0 での新機能 ・ラムダの機能強化 ラムダ属性 (Lambda improvements) https://docs.microsoft.com/ja-jp/dotnet/csharp/language-reference/operators/lambda-expressions#attributes ラムダで属性が使える、また return 値の型も書ける。メソッドの…

呼び出し元の引数の式 - C# 2.0 以降の新機能まとめ (C# 10.0 ~ ) (途中)

C#

■ C# 10.0 での新機能 ・呼び出し元の引数の式 (Caller argument expression) https://docs.microsoft.com/ja-jp/dotnet/csharp/language-reference/attributes/caller-information#argument-expressions 引数の部分で書かれた式を呼び出し先のメソッドで文…

強化された #line ディレクティブ - C# 2.0 以降の新機能まとめ (C# 10.0 ~ ) (途中)

C#

■ C# 10.0 での新機能 ・強化された #line ディレクティブ (Enhanced #line directives) https://docs.microsoft.com/ja-jp/dotnet/csharp/language-reference/preprocessor-directives#error-and-warning-information #line ディレクティブで Razor などで…

(プレビュー機能) 汎用属性 - C# 2.0 以降の新機能まとめ (C# 10.0 ~ ) (途中)

C#

■ C# 10.0 での新機能 ・汎用属性 (Generic attributes) https://docs.microsoft.com/ja-jp/dotnet/csharp/programming-guide/generics/generics-and-attributes 属性クラスでジェネリクスが使える。 [Sample<int>] void Method() {; } class SampleAttribute<T> : S</t></int>…

明確な代入分析の改善 - C# 2.0 以降の新機能まとめ (C# 10.0 ~ ) (途中)

C#

■ C# 10.0 での新機能 ・明確な代入分析の改善 (Improved definite assignment analysis) https://docs.microsoft.com/ja-jp/dotnet/csharp/language-reference/attributes/nullable-analysis ( ※いいページが見つけられませんでした ) 変数に値がセットされ…

拡張プロパティのパターン - C# 2.0 以降の新機能まとめ (C# 10.0 ~ ) (途中)

C#

■ C# 10.0 での新機能 ・拡張プロパティのパターン (Extended property patterns) https://docs.microsoft.com/ja-jp/dotnet/csharp/language-reference/operators/patterns#property-pattern パターンマッチングの機能強化。プロパティの中のオブジェクトの…

ファイル スコープの名前空間 - C# 2.0 以降の新機能まとめ (C# 10.0 ~ ) (途中)

C#

■ C# 10.0 での新機能 ・ファイル スコープの名前空間 (File scoped namespaces) https://docs.microsoft.com/ja-jp/dotnet/csharp/language-reference/keywords/namespace ファイルの先頭で名前空間を書くだけでファイル全体に名前空間を指定できる。( { } …

グローバルな using ディレクティブ - C# 2.0 以降の新機能まとめ (C# 10.0 ~ ) (途中)

C#

・グローバルな using ディレクティブ (Global using directive) https://docs.microsoft.com/ja-jp/dotnet/csharp/language-reference/keywords/using-directive#global-modifier どこかの1ファイルで using するだけですべてのファイルで using したこと…

パラメーターなしの構造体コンストラクター - C# 2.0 以降の新機能まとめ (C# 10.0 ~ ) (途中)

C#

・パラメーターなしの構造体コンストラクター ( Parameterless struct constructors) https://docs.microsoft.com/ja-jp/dotnet/csharp/language-reference/builtin-types/struct#parameterless-constructors-and-field-initializers 構造体でパラメータ (引…

レコード構造体 ( Record structs ) - C# 2.0 以降の新機能まとめ (C# 10.0 ~ ) (途中)

C#

C# 10.0 の新機能の名前と公式ガイドページへのリンクをまとめています。(途中) 注1)機能の名前はできるだけ公式ガイドから言葉を拾うようにしましたが、完全ではありません。 注2)リンク先ページはできるだけ日本語ページを拾うようにしましたが、見つ…

C# 2.0 以降の新機能まとめ (C# 10.0 ~ )

C#

C# 2.0 以降の新機能の名前と公式ガイドページへのリンクをまとめました。(C# 10.0 ~ ) (途中) 注1)機能の名前はできるだけ公式ガイドから言葉を拾うようにしましたが、完全ではありません。 注2)リンク先ページはできるだけ日本語ページを拾うようにし…