私は C# で expando オブジェクトに取り組んでいますが、存在しないプロパティにアクセスするときに「Prop not found」のような定義済みの値を割り当てる方法があるかどうか知りたいですか? 私のコードは次のとおりです。Dictionary 内の不明なプロパティにアクセスすると (expandoObject としてキャストされます)、Runtimebinderexception が発生します。
var dict = new ExpandoObject() as IDictionary<string, object>;
foreach (var item in xmldoc.Root.Elements("test"))
{
dict .Add(item.Attribute("key").Value, item.Element("value").Value);
}
/*Existing key, it works fine*/ var testKey = dict.TestData
/*For non existing key in the dictionary*/ var testKey = dict.NewKey; /*I have an exception here*/
では、例外を回避して上記のような値を表示する方法はありますか (Prop not found) ? ありがとう