これは古い投稿ですが、(C# 3.0 以降) を使用して例を挙げたいと思いました。ExtensionMethod
これにより、実装が非表示になり、代わりにプロジェクト内のどこでも使用できるようになるか、コードを何度も再作成するか、または認識する必要があるためです。いくつかのユーティリティクラスの。
拡張メソッドを使用すると、新しい派生型を作成したり、再コンパイルしたり、元の型を変更したりすることなく、既存の型にメソッドを「追加」できます。拡張メソッドは特別な種類の静的メソッドですが、拡張された型のインスタンス メソッドであるかのように呼び出されます。C# および Visual Basic で記述されたクライアント コードの場合、拡張メソッドの呼び出しと、型で実際に定義されているメソッドの呼び出しに明確な違いはありません。
public static class DateTimeExtensions
{
public static int ToYearLastTwoDigit(this DateTime date)
{
var temp = date.ToString("yy");
return int.Parse(temp);
}
}
次に、オブジェクトを使用する任意の場所でこのメソッドを呼び出すことができますDateTime
。たとえば...
var dateTime = new DateTime(2015, 06, 19);
var year = cob.ToYearLastTwoDigit();