区分XElement中的null和string.Empty值

ken*_*ken 6 .net c# xelement linq-to-xml

我有两个XElement实例:

var el1 = new System.Xml.Linq.XElement("xel", null);
var el2 = new System.Xml.Linq.XElement("xel", string.Empty);
Run Code Online (Sandbox Code Playgroud)

el1 看起来像这样:

<xel />
Run Code Online (Sandbox Code Playgroud)

el2 看起来像这样:

<xel></xel>
Run Code Online (Sandbox Code Playgroud)

然而,两者Value属性相等.string.Empty

我能想到很多黑客来区分的null,从string.EmptyXElement,但有一些内置的框架,要做到这一点,我很想念?

L.B*_*L.B 5

el1.IsEmpty将返回真,另一方面, el2.IsEmpty将返回假。