C# での動的プロパティの作成
C# では、クラスの静的プロパティを作成できます。ただし、実行時に追加のプロパティをオブジェクトに動的に追加する必要がある場合があります。さらに、並べ替え機能とフィルタリング機能が必要になる場合があります。
動的プロパティの追加
これを実現するには、辞書を使用できます。たとえば、次のコードは辞書を利用して動的プロパティを保存します:
Dictionary<string, object> properties = new Dictionary<string, object>();
これにより、角かっこ構文を使用してオブジェクトにプロパティを動的に追加できます:
properties["propertyName"] = value;
並べ替えとフィルタリング
並べ替えとフィルタリングを実装するために、提供されている例では、 LINQ のフィルター処理用の Where メソッドと Select メソッド、および並べ替え用のカスタム比較クラス。以下に例を示します。
// Example comparer class for sorting public class Comparer<T> : IComparer<ObjectWithProperties> where T : IComparable { string attributeName; public Comparer(string attributeName) { this.attributeName = attributeName; } public int Compare(ObjectWithProperties x, ObjectWithProperties y) { return ((T)x[attributeName]).CompareTo((T)y[attributeName]); } } // Example of filtering var filteredObjects = from obj in objects where (int)obj["propertyName"] >= 150 select obj; // Example of sorting Comparer<int> comparer = new Comparer<int>("propertyName"); objects.Sort(comparer);
これらの手法を採用すると、並べ替え機能やフィルター機能とともに、実行時に動的プロパティをオブジェクトに追加できます。
以上がC# で動的プロパティを追加、並べ替え、フィルターする方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。