In fact, the pdm file of PowerDesigner is an xml file. We can read the pdm file in the same way as reading the xml file.
Note: if you do not use the namespace manager, the system will prompt the following error:
The namespace manager or javastcontext is required. This query has a prefix, variable, or user-defined function.
Note: An unhandled exception occurs during the execution of the current Web request. Check the stack trace information for details about the error and the source of the error in the code.
Exception details: System. Xml. XPath. XPathException: The namespace manager or javastcontext is required. This query has a prefix, variable, or user-defined function.
Therefore, the code for reading the pdm file is as follows:
Code XmlDoc = new XmlDocument ();
XmlDoc. Load (pdmFile );
XmlnsManager = new XmlNamespaceManager (xmlDoc. NameTable );
XmlnsManager. AddNamespace ("a", "attribute ");
XmlnsManager. AddNamespace ("c", "collection ");
XmlnsManager. AddNamespace ("o", "object ");
XmlNode xnTables = xmlDoc. SelectSingleNode ("//" + cTables, xmlnsManager );
In fact, C # is not difficult to read pdm files. It is just a kind of physical activity. To reduce the detours for future generations, I will publish the code below:
ColumnInfo. cs (Field Class)
Code
Namespace Piggy. Common. PDM
{
// Field Information
Public class ColumnInfo
{
Public ColumnInfo ()
{}
String columnId;
Public string ColumnId
{
Get {return columnId ;}
Set {columnId = value ;}
}
String objectID;
Public string ObjectID
{
Get {return objectID ;}
Set {objectID = value ;}
& Nb