我有一个实现UserControl的类.在.NET 2005中,在MyClass.Designer.cs部分类文件中自动创建一个Dispose方法,如下所示:
protected override void Dispose(bool disposing)
{
if (disposing && (components != null))
{
components.Dispose();
}
base.Dispose(disposing);
}
Run Code Online (Sandbox Code Playgroud)
如果我想添加自己的Dispose功能,我会把它放在哪里?由于生成了这个文件,我不想在这里添加代码并冒着被吹走的风险.
在XSLT中,有没有办法在处理元素时确定XML文档的位置?
示例:给出以下XML Doc Fragment ...
<Doc>
<Ele1>
<Ele11>
<Ele111>
</Ele111>
</Ele11>
</Ele1>
<Ele2>
</Ele2>
</Doc>
Run Code Online (Sandbox Code Playgroud)
在XSLT中,如果我的上下文是元素"Ele111",我如何让XSLT输出完整路径?我希望它输出:"/ Doc/Ele1/Ele11/Ele111".
这个问题的上下文:我有一个非常大,非常深的文档,我想详尽地遍历(一般使用递归),如果我找到一个具有特定属性的元素,我想知道我在哪里找到它.我想我可以随身携带当前的路径,但我认为XSLT/XPath应该知道.
我需要计算XML文件中具有特定值的元素数量(以验证唯一性).XML文件如下所示:
编辑:我更新了原始的"简化"XML与实际有人设计的毛茸茸的混乱.不幸的是,这将使所有以前的答案真的令人困惑和错误,除非编辑.
<root>
<ac>
<Properties>
<Property Name="Alive">
<Properties>
<Property Name="ID">
<Properties>
<Property Name="Value">
<long>11007</long>
</Property>
</Properties>
</Property>
</Properties>
</Property>
<Property Name="Dead">
<Properties>
<Property Name="ID">
<Properties>
<Property Name="Value">
<long>11008</long>
</Property>
</Properties>
</Property>
</Properties>
</Property>
...
<Property Name="MostlyDeadAllDay">
<Properties>
<Property Name="ID">
<Properties>
<Property Name="Value">
<long>99001</long>
</Property>
</Properties>
</Property>
</Properties>
</Property>
</Properties>
</ac>
</root>
Run Code Online (Sandbox Code Playgroud)
我正在尝试定义一个变量,以查看Alive/Dead级别中有多少属性具有模板参数中定义的长值(ID).沿着这些方向的东西(虽然我怀疑这是错的)......
<xsl:param name="parPropId"/>
<xsl:variable name="countProperties">
<xsl:value-of select="count(/root/ac/
Properties/Property/
Properties/Property[@Name = 'ID']/
Properites/Property[@Name = 'Value']/long = $parPropId)"/>
</xsl:variable>
Run Code Online (Sandbox Code Playgroud)
可以在"ID"级别定义多个Property元素.但我相当确定我可以指望"ID"下只有一个Property元素("Value"),而"Value"下只有一个"long"元素.
[免责声明]无论是谁设计了整个XML文件我都坚持使用REALLY不知道如何构建XML(例如,向后使用属性与元素).我担心我的XSLT思维会暂时被扭曲:)结果.[/放弃]
我现在拥有的(成功加载插件)是这样的:
Assembly myDLL = Assembly.LoadFrom("my.dll");
IMyClass myPluginObject = myDLL.CreateInstance("MyCorp.IMyClass") as IMyClass;
Run Code Online (Sandbox Code Playgroud)
这仅适用于具有不带参数的构造函数的类.如何将参数传递给构造函数?
当我尝试访问我的一个C#项目资源中的字符串属性时,我收到以下错误:
Run Code Online (Sandbox Code Playgroud)'ORG.PRJ.MOD.MyClass2' does not contain a definition for 'Properties'
产生错误的代码是:
string s = MyClass2.Properties.Resources.TestString2;
Run Code Online (Sandbox Code Playgroud)
真正奇怪的是,我的解决方案中的另一个项目(使用MyClass和TestString)具有完全相同的设置不会产生错误并且像冠军一样工作.这是背景和我尝试过的所有事情.