本文整理汇总了C#中DomNodeType.GetChildInfo方法的典型用法代码示例。如果您正苦于以下问题:C# DomNodeType.GetChildInfo方法的具体用法?C# DomNodeType.GetChildInfo怎么用?C# DomNodeType.GetChildInfo使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类DomNodeType
的用法示例。
在下文中一共展示了DomNodeType.GetChildInfo方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: TestInheritedChildInfo
public void TestInheritedChildInfo()
{
ChildInfo info = new ChildInfo("foo", new DomNodeType("foo"));
DomNodeType test = new DomNodeType(
"test",
null,
EmptyEnumerable<AttributeInfo>.Instance,
new ChildInfo[] { info },
EmptyEnumerable<ExtensionInfo>.Instance);
DomNodeType child = new DomNodeType("child");
child.BaseType = test;
ChildInfo inherited = child.GetChildInfo("foo");
Assert.AreEqual(inherited.OwningType, test);
Assert.AreEqual(inherited.DefiningType, test);
Assert.True(inherited.Equivalent(info));
Assert.True(info.Equivalent(inherited));
}
示例2: TestOverriddenChildInfo
public void TestOverriddenChildInfo()
{
DomNodeType childType = new DomNodeType("foo");
ChildInfo info = new ChildInfo("foo", childType);
DomNodeType test = new DomNodeType(
"test",
null,
EmptyEnumerable<AttributeInfo>.Instance,
new ChildInfo[] { info },
EmptyEnumerable<ExtensionInfo>.Instance);
ChildInfo overridden = new ChildInfo("foo", childType);
DomNodeType child = new DomNodeType("child", test,
EmptyEnumerable<AttributeInfo>.Instance,
new ChildInfo[] { overridden },
EmptyEnumerable<ExtensionInfo>.Instance);
Assert.AreSame(child.GetChildInfo("foo"), overridden);
Assert.AreEqual(overridden.OwningType, child);
Assert.AreEqual(overridden.DefiningType, test);
Assert.True(info.Equivalent(overridden));
Assert.True(overridden.Equivalent(info));
Assert.True(test.IsValid(overridden));
Assert.True(child.IsValid(info));
}
示例3: TestCustomChildInfo
public void TestCustomChildInfo()
{
DomNodeType type = new DomNodeType("foo");
ChildInfo info = new ChildInfo("foo", type);
DomNodeType test = new DomNodeType(
"test",
null,
EmptyEnumerable<AttributeInfo>.Instance,
new ChildInfo[] { info },
EmptyEnumerable<ExtensionInfo>.Instance);
Utilities.TestSequenceEqual(test.Children, info);
Assert.True(test.IsValid(info));
Assert.AreSame(test.GetChildInfo("foo"), info);
// check that type is now frozen
Assert.Throws<InvalidOperationException>(delegate { test.Define(new ChildInfo("notFoo", type)); });
Assert.AreEqual(info.OwningType, test);
Assert.AreEqual(info.DefiningType, test);
Assert.Null(test.GetChildInfo("bar"));
}