IListというプロパティを持つモデルがあります。リフレクションを使用してIListプロパティを更新する方法
public class SomeClass
{
public IList<CustomClass> CustomProperty1
}
私は上記のプロパティに値を追加する必要があります。助言がありますか?
IListというプロパティを持つモデルがあります。リフレクションを使用してIListプロパティを更新する方法
public class SomeClass
{
public IList<CustomClass> CustomProperty1
}
私は上記のプロパティに値を追加する必要があります。助言がありますか?
IEnuerableで送信することはできません。それはIListまたは他のインタフェースでなければなりません。
linqメソッド.Concat()
を使用すると、それを行うことができます。
SomeClass c = /* ... */
CustomClass[] extraItems = new CustomClass[] { /* ... */ };
c.CustomProperty1 = c.CustomProperty1.Concat(extraItems);
これは列挙に複数の項目を追加するのではなく、その中に複数のアイテムを持っている新しい列挙を割り当てていません。
これはリフレクションを使用していませんが、実際にはあなたがそうでないと仮定していますにはリフレクションを使用するがあります。
これは技術的には正しいですが、OPは実際に彼の質問をあまりにも愚かにしているので、彼が尋ねたことは実際に自分がやろうとしていることではないと思われます。 – Enigmativity
なぜ反射を使用する必要がありますか?通常のコードで行うほうが簡単ではないでしょうか? – recursive
現在のコード実装では、更新するプロパティを持つクラスインスタンスを持つKeyValuePairが存在します。 – TusharJ
ジョエルの権利 - これはできません。その質問は、それが現れてもコミュニティにとっては価値がない。おそらく、私たちにあなたの実際のコードを示すことができ、私たちは他のオプションをあなたに手伝ってくれるでしょうか? – Enigmativity