皆さんの素晴らしい回答やお気に入りの回答を投稿してリストを作りましょう拡張メソッド。
要件は、完全なコードとその使用方法の例と説明を投稿することです。
このトピックへの高い関心に基づいて、私はextensionoverflowと呼ばれるオープンソースプロジェクトを立ち上げました。コードプレックス。
回答に承諾マークを付けて、コードを Codeplex プロジェクトに載せてください。
リンクではなく、完全なソースコードを投稿してください。
Codeplex ニュース:
2010 年 8 月 24 日 Codeplex ページがここにあります:http://extensionoverflow.codeplex.com/
2008年11月11日XmlSerialize / XmlDeserializeが実装済みそしてユニットテスト済み。
2008 年 11 月 11 日 まだ開発者を受け入れる余地があります。 ;-)今すぐ参加してください!
2008年11月11日 3人目の寄稿者が参加拡張機能オーバーフローようこそBクリステンセン
2008年11月11日FormatWithは現在実装済みそしてユニットテスト済み。
2008年9月11日 2人目の寄稿者が参加拡張機能オーバーフローようこそチャクリット。
2008 年 9 月 11 日 もっと開発者が必要です。 ;-)
2008年9月11日ThrowIfArgumentIsNullが現在実装済みそしてユニットテスト済みCodeplex で。
ベストアンサー1
public static bool In<T>(this T source, params T[] list)
{
if(null==source) throw new ArgumentNullException("source");
return list.Contains(source);
}
置き換え可能:
if(reallyLongIntegerVariableName == 1 ||
reallyLongIntegerVariableName == 6 ||
reallyLongIntegerVariableName == 9 ||
reallyLongIntegerVariableName == 11)
{
// do something....
}
and
if(reallyLongStringVariableName == "string1" ||
reallyLongStringVariableName == "string2" ||
reallyLongStringVariableName == "string3")
{
// do something....
}
and
if(reallyLongMethodParameterName == SomeEnum.Value1 ||
reallyLongMethodParameterName == SomeEnum.Value2 ||
reallyLongMethodParameterName == SomeEnum.Value3 ||
reallyLongMethodParameterName == SomeEnum.Value4)
{
// do something....
}
と:
if(reallyLongIntegerVariableName.In(1,6,9,11))
{
// do something....
}
and
if(reallyLongStringVariableName.In("string1","string2","string3"))
{
// do something....
}
and
if(reallyLongMethodParameterName.In(SomeEnum.Value1, SomeEnum.Value2, SomeEnum.Value3, SomeEnum.Value4)
{
// do something....
}