XAttribute
およびXElement
は両方ともXObject
タイプに由来します。XAttributeとXElementのメソッドを記述することはできますか?
両方ともValue
プロパティを持っています。
はこれまでのところ、これは私がやりたいと作ってみたものです:
string FooMyXObject(XObject bar){
if (bar.NodeType == NodeType.Element)
return (bar as XElement).Value;
else if (bar.NodeType == NodeType.XAttribute)
return (bar as XAttribute).Value;
else
throw new Exception("Generic Fail Message");
}
これは不格好な感じ。私はこれをより鈍いものにするための方法があることを願っています。 XObject
からValue
プロパティにアクセスするには、両方とも文字列プロパティー名Value
があるためです。
これは可能ですか、それとも私はちょうどこのように頑張ってやっていますか?
['XText'](https://msdn.microsoft.com/en-us/library/system.xml.linq.xtext(v = vs.110).aspx)と[' XComment'](https ://msdn.microsoft.com/en-us/library/system.xml.linq.xcomment(v = vs.110).aspx)には、共通基本クラスのない「Value」プロパティもあります。それは本当に少し迷惑です。これはまさにIHasValueインターフェースが適切であった状況です。 – dbc