0
我在使用Axis Properties导航XElements的类上。在这样做的时候,我使用了import语句来导入xml名称空间。我想使用相同的类来处理不同版本的xml文件,它们对名称空间具有不同的URI,但具有相同的前缀。如何导入带有多个URI的xml名称空间
如果1.0版本则
imports <xmlns:name1="urn:company:name1:1.0">
imports <xmlns:name2="urn:company:name2:1.0">
imports <xmlns:gml="http://www.opengis.net/gml/3.2">
如果2.0版本则
imports xmlns:name1="urn:company:name1:2.0"
imports <xmlns:name2="urn:company:name2:2.0">
imports <xmlns:gml="http://www.opengis.net/gml/3.2">
public class myObject
public Function GetElements(byval inXElement as XElement) as IEnumerable(of XElement)
dim IXElement = from myElement in inXElement...<name1:ElementName> select myElement
return IXElement
end function
end class
我相信这可以通过对每一个从基类继承的版本不同的对象来完成,但所期待的这样做会更快一些,并且需要更少的代码重复。除了与前缀关联的URI之外,子类的许多函数和子类将完全相同。因此,在基类中导入名称空间将不起作用。如果我在子类中导入名称空间,那么我必须复制所有的函数和子类。