XElementのXAttributeが存在しない場合に、デフォルト値を返すためのより簡単で優れた方法はありますか?:
私はこれをもっと短い方法で書き込もうとしています(これは2ライナーだからです):
var a = root.Attribute("testAttribute");
var v = (a == null ? "" : a.Value);
私のアプローチ:拡張メソッドを介して:
public static XAttribute Attribute(this XElement obj, string name, string defaultValue)
{
if (obj.Attribute(name) == null)
return new XAttribute(name, defaultValue);
return obj.Attribute(name);
}
var v = root.Attribute("testAttribute", "").Value;
これには、速度に大きな悪影響を与えるような副作用がありますか?それを行うためのより良い方法はありますか?