TellmePdmsPluging/NetInterfaceReferenceFiles/Aveva.ApplicationFramework/Aveva.ApplicationFramework.Presentation.ToolsCollectionMethods.html
root 3082148d7e 实现PDMS模型状态API并移除硬编码数据
## 主要改进
- 实现 /api/status/model 接口,返回真实PDMS模型状态信息
- 使用MDB.CurrentMDB、Project.CurrentProject等AVEVA API获取真实数据
- 移除硬编码的CurrentSession、PositionInfo、PdmsSpecific等复杂结构
- 简化数据模型,只保留核心的真实数据字段

## 技术实现
- 通过DbSession获取真实的用户名、会话开始时间和持续时间
- 通过WorldMembers()获取真实的模型元素统计
- 修复DateTime类型的null合并运算符编译错误
- 清理不使用的方法和类定义

## API返回数据
现在返回的数据主要包含真实的PDMS信息:
- ModelLoaded: MDB连接状态检查
- ProjectName: 真实的设计数据库名称
- MdsName: 真实的MDB名称
- UserName: 真实的数据库会话用户
- StartTime: 真实的会话创建时间
- TotalElements: 真实的模型元素数量统计

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-08-01 10:36:02 +08:00

60 lines
5.6 KiB
HTML
Raw Permalink Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<html dir="LTR">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=Windows-1252" />
<meta name="vs_targetSchema" content="http://schemas.microsoft.com/intellisense/ie5" />
<title>ToolsCollection Methods</title>
<xml>
</xml>
<link rel="stylesheet" type="text/css" href="MSDN.css" />
</head>
<body id="bodyID" class="dtBODY">
<div id="nsbanner">
<div id="bannerrow1">
<table class="bannerparthead" cellspacing="0">
<tr id="hdr">
<td class="runninghead">Common Application Framework</td>
<td class="product">
</td>
</tr>
</table>
</div>
<div id="TitleRow">
<h1 class="dtH1">ToolsCollection Methods</h1>
</div>
</div>
<div id="nstext">
<p>The methods of the <b>ToolsCollection</b> class are listed below. For a complete list of <b>ToolsCollection</b> class members, see the <a href="Aveva.ApplicationFramework.Presentation.ToolsCollectionMembers.html">ToolsCollection Members</a> topic.</p>
<h4 class="dtH4">Public Instance Methods</h4>
<div class="tablediv">
<table class="dtTABLE" cellspacing="0">
<tr VALIGN="top"><td width="50%"><img src="pubmethod.gif"></img><a href="Aveva.ApplicationFramework.Presentation.ToolsCollection.AddTool.html">AddTool</a></td><td width="50%"> Create an instance of a root tool and add it to the ToolsCollection, with the same Key. </td></tr>
<tr VALIGN="top"><td width="50%"><img src="pubmethod.gif"></img><a href="Aveva.ApplicationFramework.Presentation.ToolsCollection.Clear.html">Clear</a></td><td width="50%"> Remove all tool instances from the ToolsCollection. </td></tr>
<tr VALIGN="top"><td width="50%"><img src="pubmethod.gif"></img><a href="Aveva.ApplicationFramework.Presentation.ToolsCollection.Contains.html">Contains</a></td><td width="50%"> Determine if the tool instance with the specified Key exists in the ToolsCollection. </td></tr>
<tr VALIGN="top"><td width="50%"><img src="pubmethod.gif"></img><a href="Aveva.ApplicationFramework.Presentation.ToolsCollection.CopyTo.html">CopyTo</a></td><td width="50%"> Copies the elements of the collection to an Array, starting at a particular Array index. </td></tr>
<tr VALIGN="top"><td width="50%"><img src="pubmethod.gif"></img><a href="ms-help://MS.NETFrameworkSDKv1.1/cpref/html/frlrfSystemObjectClassEqualsTopic.htm">Equals</a> (inherited from <b>Object</b>)</td><td width="50%">
Determines whether the specified <a href="ms-help://MS.NETFrameworkSDKv1.1/cpref/html/frlrfSystemObjectClassTopic.htm">Object</a> is equal to the current <b>Object</b>.
</td></tr>
<tr VALIGN="top"><td width="50%"><img src="pubmethod.gif"></img><a href="Aveva.ApplicationFramework.Presentation.ToolsCollection.GetEnumerator.html">GetEnumerator</a></td><td width="50%"> Returns an enumerator that can iterate through the Collection. </td></tr>
<tr VALIGN="top"><td width="50%"><img src="pubmethod.gif"></img><a href="ms-help://MS.NETFrameworkSDKv1.1/cpref/html/frlrfSystemObjectClassGetHashCodeTopic.htm">GetHashCode</a> (inherited from <b>Object</b>)</td><td width="50%">
Serves as a hash function for a particular type, suitable for use in hashing algorithms and data structures like a hash table.
</td></tr>
<tr VALIGN="top"><td width="50%"><img src="pubmethod.gif"></img><a href="ms-help://MS.NETFrameworkSDKv1.1/cpref/html/frlrfSystemObjectClassGetTypeTopic.htm">GetType</a> (inherited from <b>Object</b>)</td><td width="50%">
Gets the <a href="ms-help://MS.NETFrameworkSDKv1.1/cpref/html/frlrfSystemTypeClassTopic.htm">Type</a> of the current instance.
</td></tr>
<tr VALIGN="top"><td width="50%"><img src="pubmethod.gif"></img><a href="Aveva.ApplicationFramework.Presentation.ToolsCollection.IndexOf.html">IndexOf</a></td><td width="50%"> Get the index of the tool with given Key from the ToolsCollection. Returns -1 if tool is not in the collection. </td></tr>
<tr VALIGN="top"><td width="50%"><img src="pubmethod.gif"></img><a href="Aveva.ApplicationFramework.Presentation.ToolsCollection.InsertTool.html">InsertTool</a></td><td width="50%"> Create an instance of a root tool and insert it into the ToolsCollection at the given index, with the same Key. </td></tr>
<tr VALIGN="top"><td width="50%"><img src="pubmethod.gif"></img><a href="Aveva.ApplicationFramework.Presentation.ToolsCollection.Remove.html">Remove</a></td><td width="50%"> Remove the tool instance with the specified Key from the ToolsCollection. </td></tr>
<tr VALIGN="top"><td width="50%"><img src="pubmethod.gif"></img><a href="Aveva.ApplicationFramework.Presentation.ToolsCollection.RemoveAt.html">RemoveAt</a></td><td width="50%"> Remove the tool instance at the specified index position from the ToolsCollection. </td></tr>
<tr VALIGN="top"><td width="50%"><img src="pubmethod.gif"></img><a href="ms-help://MS.NETFrameworkSDKv1.1/cpref/html/frlrfSystemObjectClassToStringTopic.htm">ToString</a> (inherited from <b>Object</b>)</td><td width="50%">
Returns a <a href="ms-help://MS.NETFrameworkSDKv1.1/cpref/html/frlrfSystemStringClassTopic.htm">String</a> that represents the current <a href="ms-help://MS.NETFrameworkSDKv1.1/cpref/html/frlrfSystemObjectClassTopic.htm">Object</a>.
</td></tr></table>
</div>
<h4 class="dtH4">See Also</h4>
<p>
<a href="Aveva.ApplicationFramework.Presentation.ToolsCollection.html">ToolsCollection Class</a> | <a href="Aveva.ApplicationFramework.Presentation.html">Aveva.ApplicationFramework.Presentation Namespace</a></p>
<hr />
<div id="footer">©AVEVA Solutions Ltd 2007</div>
</div>
</body>
</html>