.NET
.NET 4.6.1と4.6.2の差異が知りたい🤔#.NET— jhashimoto (@JHashimoto0518) July 9, 2019
KB4462919の不具合のようです。
BogusとCsvHelperでダミーデータのCSVを生成してみました。
LINQPadは、.NETのコードを実行できる軽量なアプリです。ちょっとしたコードを試すのに便利です。無料版もあります。
概要 指定した文字で桁埋めできる値を表すFormattableValueクラスを書いてみました。
Enum.Parseを使って、文字列をEnumにParseするには以下のように書きます。 (Creature) Enum.Parse(typeof(Creature), "Human"); 型を2回指定するのが面倒なので、型を指定してEnumにParseするParse<T>メソッドを書いてみました。</t>
MSTestで、ExpectedExceptionAttributeを使用したところ、挙動が自分の想定と違っていたので、調べてみました。
C#で、数値の変数をvarで宣言した場合の型の違いを確認してみました。
.NET用マイクロORMのDapperを始めてみました。
Dapperでパラメーターを使用してみます。
前回は、文字列が日時として妥当かどうかを返す拡張メソッドを作成しました。 blog.jhashimoto.netそこで、今回は、文字列が指定された書式の日時として妥当かどうかを返す拡張メソッドIsValidAsDateTimeExactを作成してみます。
文字列の変換は不要で、日時として妥当かどうかを知りたいだけの場合、DateTime.TryParseを使うのは、煩わしいですよね。 DateTime result; // わざわざ変数を宣言しなければならない。 bool isValid = DateTime.TryParse("2016/01/01", out result); そこで…
Visual Studio 2015で、現在のコンテキストのテストを実行する方法を紹介します。
IEnumerable.ToArrayとToListの速度を比べてみました。
.NET Frameworkのソースコードは以前から公開されてましたが、今はWebサイトがあるのですね。知りませんでした。
前回、HashSetに拡張メソッドで、AddRangeを実装しました。blog.jhashimoto.net今回は、同様にAsReadOnly<T>を実装してみました。</t>
List<T>にはAddRangeがありますが、なぜかHashSet<T>にはありません。拡張メソッドで実装してみました。 HashSetExtensions.cs using System; using System.Collections.Generic; namespace Extensions { public static class HashSetExtensions { /// <summary> /// 指定し</summary></t></t>…
String.Formatで "{" と "}" を出力するには、"{" または "}" を2つ続けて記述します。
前回、TrimStartのオーバーロードを書いたので、今回はTrimEndのオーバーロードを書きたいと思います。blog.jhashimoto.net
String.TrimStartは、引数がcharです。Stringが引数のオーバーロードを書いてみました。
ToListがあるなら、ToCollectionがあってもいいと思い、書いてみました。
この記事は、C# Advent Calendarの22日目です。qiita.com任意のXMLを読み込めるクラスXmlLoaderをつくってみました。
前回、String.TrimStartにnullまたは空の配列を渡すと空白文字が削除されることを確認しました。
クラスライブラリリファレンスによると、String.TrimStartにnullまたは空の配列を渡すと空白文字が削除されるそうです。
指定した文字列を削除した文字列を取得する拡張メソッドRemoveです。
文字列を行に分割する拡張メソッドSplitToLinesです。
文字列が数字のみで構成されているかどうかを取得する拡張メソッドIsNumberOnlyです。
指定された文字数の文字列を文字列の左端から取得する拡張メソッドLeftです。
文字列の右端から指定された文字数の文字列を取得する拡張メソッドです。
最近気になっているキーワード「power-assert」の.NET版を見つけました。PowerAssert/PowerAssert.Net · GitHubあとで試します。