在我投射之后,我无法设置属性的值.我不确定这是否被称为拳击.
无论如何,新的变量正在设置,但原始的不是.我认为新变量只是对原始变量的引用.但是当我检查intellisence/debug观察器时,原始属性仍为null.
这是代码.
// NOTE: data is either a Foo || FooFoo || FooBar, at this point.
// only Foo impliments ITagElement.
if (data is ITagElement)
{
var tags = ((ITagElement)data).TagList;
// At this point, tags == null and data.TagList == null.
if (tags.IsNullOrEmpty())
{
tags = new List<Tag>();
}
tags.Add(new Tag
{
K = xmlReader.GetAttribute("k"),
V = xmlReader.GetAttribute("v")
});
// At this point, Tags.Count == 1 and data.TagList == null :( :( :(
}
Run Code Online (Sandbox Code Playgroud)
请注意有关该值我行内注释 …
.net ×1