public ViewColumnInfo(ViewInfo view) { _viewInfo = view; }
//初始化"o:View"的节点 private ViewInfo GetView(XmlNode xnView) { ViewInfo theView = new ViewInfo(); XmlElement xe = (XmlElement)xnView; theView.ViewId = xe.GetAttribute("Id"); XmlNodeList xnTProperty = xe.ChildNodes; foreach (XmlNode xnP in xnTProperty) { switch (xnP.Name) { case "a:ObjectID": theView.ObjectId = xnP.InnerText; break; case "a:Name": theView.Name = xnP.InnerText; break; case "a:Code": theView.Code = xnP.InnerText; break; case "a:CreationDate": theView.CreationDate = String2DateTime(xnP.InnerText); break; case "a:Creator": theView.Creator = xnP.InnerText; break; case "a:ModificationDate": theView.ModificationDate = String2DateTime(xnP.InnerText); break; case "a:Modifier": theView.Modifier = xnP.InnerText; break; case "a:Comment": theView.Comment = xnP.InnerText; break; case "a:Description": theView.Description = xnP.InnerText; break; case "a:View.SQLQuery": theView.ViewSqlQuery = xnP.InnerText; break; case "a:TaggedSQLQuery": theView.TaggedSqlQuery = xnP.InnerText; break; case "c:Columns": InitColumns(xnP, theView); break; } } return(theView); }
//初始化"o:View"的节点 private ViewInfo GetView(XmlNode xnView) { ViewInfo theView = new ViewInfo(); XmlElement xe = (XmlElement)xnView; theView.ViewId = xe.GetAttribute("Id"); XmlNodeList xnTProperty = xe.ChildNodes; foreach (XmlNode xnP in xnTProperty) { switch (xnP.Name) { case "a:ObjectID": theView.ObjectId = xnP.InnerText; break; case "a:Name": theView.Name = xnP.InnerText; break; case "a:Code": theView.Code = xnP.InnerText; break; case "a:CreationDate": theView.CreationDate = String2DateTime(xnP.InnerText); break; case "a:Creator": theView.Creator = xnP.InnerText; break; case "a:ModificationDate": theView.ModificationDate = String2DateTime(xnP.InnerText); break; case "a:Modifier": theView.Modifier = xnP.InnerText; break; case "a:Comment": theView.Comment = xnP.InnerText; break; case "a:Description": theView.Description = xnP.InnerText; break; case "a:View.SQLQuery": theView.ViewSqlQuery = xnP.InnerText; break; case "a:TaggedSQLQuery": theView.TaggedSqlQuery = xnP.InnerText; break; case "c:Columns": InitColumns(xnP, theView); break; } } return theView; }
//初始化"c:Columns"的节点 private void InitColumns(XmlNode xnColumns, ViewInfo pView) { foreach (XmlNode xnColumn in xnColumns) { pView.Columns.Add(GetColumn(xnColumn, pView)); } }
private ViewColumnInfo GetColumn(XmlNode xnColumn, ViewInfo ownerView) { ViewColumnInfo mColumn = new ViewColumnInfo(ownerView); XmlElement xe = (XmlElement)xnColumn; mColumn.ViewColumnId = xe.GetAttribute("Id"); XmlNodeList xnCProperty = xe.ChildNodes; foreach (XmlNode xnP in xnCProperty) { switch (xnP.Name) { case "a:ObjectID": mColumn.ObjectId = xnP.InnerText; break; case "a:Name": mColumn.Name = xnP.InnerText; break; case "a:Code": mColumn.Code = xnP.InnerText; break; case "a:CreationDate": mColumn.CreationDate = String2DateTime(xnP.InnerText); break; case "a:Creator": mColumn.Creator = xnP.InnerText; break; case "a:ModificationDate": mColumn.ModificationDate = String2DateTime(xnP.InnerText); break; case "a:Modifier": mColumn.Modifier = xnP.InnerText; break; case "a:Comment": mColumn.Comment = xnP.InnerText; break; case "a:DataType": mColumn.DataType = xnP.InnerText; break; case "a:Length": mColumn.Length = xnP.InnerText; break; case "a:Precision": mColumn.Description = xnP.InnerText; break; } } return mColumn; }