Exemplo n.º 1
0
        /// <summary>
        /// Loads PageDocument from temporary database storage
        /// </summary>
        /// <param name="PageVersionId">The page version id.</param>
        /// <param name="UserUID">The user UID.</param>
        /// <returns></returns>

        public PageDocument Load(int PageVersionId, Guid UserUID)
        {
            PageDocument pd        = new PageDocument();
            int          StorageId = -1;

            using (IDataReader reader = Database.TemporaryDBStorage.GetByPageVersionId(PageVersionId, UserUID))
            {
                if (reader.Read())
                {
                    StorageId = (int)reader["StorageId"];
                    reader.Close();
                }
                else
                {
                    reader.Close();
                    return(null);
                }
            }

            using (IDataReader reader = Database.TemporaryDBStorage.GetById(StorageId))
            {
                if (reader.Read())
                {
                    pd = (PageDocument)Helper.Deserialize((byte[])reader["PageDocument"]);
                    reader.Close();
                    return(pd);
                }

                reader.Close();
            }
            return(null);
        }
Exemplo n.º 2
0
        /// <summary>
        /// Saves PageDocument to the temporary database storage
        /// </summary>
        /// <param name="pageDocument">The page document.</param>
        /// <param name="PageVersionId">The page version id.</param>
        /// <param name="UserUID">The user UID.</param>
        public void Save(PageDocument pageDocument, int PageVersionId, Guid UserUID)
        {
            if (pageDocument == null)
            {
                return;
            }
            int StorageId = -1;

            using (IDataReader reader = Database.TemporaryDBStorage.GetByPageVersionId(PageVersionId, UserUID))
            {
                if (reader.Read())
                {
                    StorageId = (int)reader["StorageId"];
                }

                reader.Close();
            }
            if (StorageId > 0)            //Update existing document
            {
                Database.TemporaryDBStorage.Update(StorageId, PageVersionId, Expire, Helper.Serialize(pageDocument), UserUID);
            }
            else             //Add new document
            {
                Database.TemporaryDBStorage.Add(PageVersionId, Expire, Helper.Serialize(pageDocument), UserUID);
            }
        }
Exemplo n.º 3
0
 /// <summary>
 /// Sets the owner document.
 /// </summary>
 /// <param name="pDocument">The p document.</param>
 public void SetOwnerDocument(PageDocument pDocument)
 {
     if (pDocument != null)
     {
         _ownerDocument = pDocument;
     }
 }
 /// <summary>
 /// Saves PageDocument to the temporary cache storage
 /// </summary>
 /// <param name="pageDocument"></param>
 /// <param name="PageVersionId"></param>
 /// <param name="UserUID"></param>
 public void Save(PageDocument pageDocument, int PageVersionId, Guid UserUID)
 {
     if (pageDocument == null)
     {
         return;
     }
     HttpContext.Current.Cache[UserUID.ToString() + "_" + PageVersionId.ToString()] = pageDocument;
 }
Exemplo n.º 5
0
        /// <summary>
        /// Opens the specified pagedocument.
        /// </summary>
        /// <param name="pageVersionId">The page version id.</param>
        /// <param name="openMode">The open mode.</param>
        /// <param name="userUID">The user UID.</param>
        /// <returns></returns>
        public static PageDocument Open(int pageVersionId, OpenMode openMode, Guid userUID)
        {
            PageDocument pDocument = null;
            string       cacheKey  = CmsCache.CreateCacheKey("pagedocument", pageVersionId.ToString(), userUID.ToString());

            // Check cache first
            if (openMode == OpenMode.View) // only use cache in view mode
            {
                // check cache first
                object cachedObject = CmsCache.Get(cacheKey);

                if (cachedObject != null)
                {
                    pDocument = (PageDocument)cachedObject;
                    return(pDocument);
                }
            }

            int pageDocumentId = -1;

            //CHECK
            using (IDataReader reader = Database.PageDocument.GetByPageVersionId(pageVersionId))
            {
                //EXIST PD
                if (reader.Read())
                {
                    pageDocumentId = (int)reader["PageId"];
                }
                //CREATE NEW PD
                else
                {
                    pageDocumentId = Database.PageDocument.Add(pageVersionId);
                    Database.Node.Add(pageDocumentId, (int)Database.NodeType.Type.StaticNode, "StaticNode", "", "", "", 0);
                }

                reader.Close();
            }

            if (pageDocumentId > 0)
            {
                switch (openMode)
                {
                case OpenMode.Design:
                    //load from temp storage
                    pDocument = _temporaryDocumentStorage.Load(pageVersionId, userUID);
                    //create temp page document
                    if (pDocument == null && pageVersionId == -2)
                    {
                        pDocument = new PageDocument();
                        pDocument.PageVersionId = -2;
                    }
                    //load from persist storage
                    if (pDocument == null)
                    {
                        pDocument = _persistentDocumentStorage.Load(pageVersionId, Guid.Empty);
                    }
                    break;

                case OpenMode.View:
                    pDocument = _persistentDocumentStorage.Load(pageVersionId, Guid.Empty);

                    // Insert to the cache collection
                    CmsCache.Insert(cacheKey, pDocument, CmsConfiguration.Instance.Cache.PageDocumentTimeout);
                    break;

                default:
                    throw new ArgumentNullException();
                }
                //_current = pDocument;

                return(pDocument);
            }

            return(null);
        }
Exemplo n.º 6
0
 /// <summary>
 /// Initializes a new instance of the <see cref="NodeStep"/> class.
 /// </summary>
 /// <param name="_pageDocument">The _page document.</param>
 public NodeStep(PageDocument _pageDocument)
 {
     _ownerPageStorage = _pageDocument;
 }
Exemplo n.º 7
0
        /// <summary>
        /// Loads PageDocument instance from the SQL Database
        /// </summary>
        /// <param name="PageVersionId">The page version id.</param>
        /// <param name="UserUID">The user UID.</param>
        /// <returns></returns>
        public PageDocument Load(int PageVersionId, Guid UserUID)
        {
            PageDocument pd = new PageDocument();
            int          PageId = -1;
            int          i, j;

            using (IDataReader reader = Database.PageDocument.GetByPageVersionId(PageVersionId))
            {
                if (reader.Read())
                {
                    PageId           = (int)reader["PageId"];
                    pd.PageVersionId = (int)reader["PageVersionId"];
                    reader.Close();
                }
                else
                {
                    reader.Close();
                    return(null);
                }
            }
            //Reading page nodes
            int       sNodeId   = -1;
            ArrayList dNodesIDs = new ArrayList();

            dNodesIDs.Clear();
            using (IDataReader reader = Database.Node.GetByPageId(PageId))
            {
                while (reader.Read())
                {
                    if ((int)reader["NodeTypeId"] == 1) //Static node
                    {
                        sNodeId = (int)reader["NodeId"];
                    }
                    else //dynamic node
                    {
                        dNodesIDs.Add((int)reader["NodeId"]);
                    }
                }

                reader.Close();
            }
            ArrayList   conIDs     = null;
            Node        StaticNode = null;
            DynamicNode DNode      = null;

            if (sNodeId > 0)//Load controls and control settings for static node
            {
                using (IDataReader reader = Database.Node.GetById(sNodeId))
                {
                    if (reader.Read())
                    {
                        StaticNode          = new Node();
                        StaticNode.NodeUID  = reader["NodeUID"].ToString();
                        StaticNode.Controls = new NodeControlSettingsCollection();
                    }

                    reader.Close();
                }
                if (StaticNode != null)
                {
                    using (IDataReader reader = Database.Control.GetByNodeId(sNodeId))
                    {
                        conIDs = new ArrayList();
                        while (reader.Read())
                        {
                            conIDs.Add((int)reader["ControlId"]);
                        }

                        reader.Close();
                    }
                }
                if (conIDs != null && conIDs.Count > 0)
                {
                    for (i = 0; i < conIDs.Count; i++)
                    {
                        Param           par = new Param();
                        ControlSettings cs  = new ControlSettings();
                        using (IDataReader reader = Database.ControlSettings.GetByControlId((int)conIDs[i]))
                        {
                            while (reader.Read())
                            {
                                par.Add(reader["Key"].ToString(),
                                        reader["Value"] != DBNull.Value ? Helper.Deserialize((byte[])reader["Value"]) : null);

                                cs.Params = par;
                            }

                            reader.Close();
                        }
                        string ControlUID = string.Empty;
                        using (IDataReader reader = Database.Control.GetById((int)conIDs[i]))
                        {
                            if (reader.Read())
                            {
                                ControlUID = reader["ControlUID"].ToString();
                            }

                            reader.Close();
                        }
                        if (StaticNode != null)
                        {
                            StaticNode.Controls.Add(ControlUID, cs);
                        }
                    }
                }
                pd.StaticNode  = StaticNode;
                pd.CurrentNode = StaticNode;
            }//if (sNodeId > 0)
            //Dynamic nodes
            if (pd.DynamicNodes == null)
            {
                pd.DynamicNodes = new DynamicNodeCollection(pd);
            }
            if (dNodesIDs != null && dNodesIDs.Count > 0)
            {
                for (j = 0; j < dNodesIDs.Count; j++)
                {
                    DNode  = null;
                    conIDs = null;
                    using (IDataReader reader = Database.Node.GetById((int)dNodesIDs[j]))
                    {
                        if (reader.Read())
                        {
                            DNode                   = new DynamicNode();
                            DNode.NodeUID           = reader["NodeUID"].ToString();
                            DNode.FactoryUID        = reader["FactoryUID"].ToString();
                            DNode.FactoryControlUID = reader["FactoryControlUID"].ToString();
                            DNode.ControlPlaceId    = reader["ControlPlaceId"].ToString();
                            DNode.ControlPlaceIndex = Convert.ToInt32(reader["ControlPlaceIndex"].ToString());
                            DNode.Controls          = new NodeControlSettingsCollection();
                        }

                        reader.Close();
                    }
                    if (DNode != null)
                    {
                        conIDs = new ArrayList();
                        using (IDataReader reader = Database.Control.GetByNodeId((int)dNodesIDs[j]))
                        {
                            while (reader.Read())
                            {
                                conIDs.Add((int)reader["ControlId"]);
                            }

                            reader.Close();
                        }
                    }
                    if (conIDs != null && conIDs.Count > 0)
                    {
                        for (i = 0; i < conIDs.Count; i++)
                        {
                            Param           par = new Param();
                            ControlSettings cs  = new ControlSettings();
                            using (IDataReader reader = Database.ControlSettings.GetByControlId((int)conIDs[i]))
                            {
                                while (reader.Read())
                                {
                                    par.Add(reader["Key"].ToString(),
                                            reader["Value"] != DBNull.Value ? Helper.Deserialize((byte[])reader["Value"]) : null);

                                    cs.Params = par;
                                }

                                reader.Close();
                            }
                            string ControlUID = string.Empty;
                            using (IDataReader reader = Database.Control.GetById((int)conIDs[i]))
                            {
                                if (reader.Read())
                                {
                                    ControlUID = reader["ControlUID"].ToString();
                                }

                                reader.Close();
                            }
                            if (DNode != null)
                            {
                                DNode.Controls.Add(ControlUID, cs);
                            }
                        }
                    }
                    if (DNode != null)
                    {
                        pd.DynamicNodes.Add(DNode);
                    }
                } //for (j = 0; j < dNodesIDs.Count; j++)
            }     //if (dNodesIDs != null && dNodesIDs.Count > 0)
            return(pd);
        }
Exemplo n.º 8
0
        /// <summary>
        /// Saves the specified page document to the SQL Database.
        /// </summary>
        /// <param name="pageDocument">The page document.</param>
        /// <param name="pageVersionId">The page version id.</param>
        /// <param name="userUID">The user UID.</param>
        public void Save(PageDocument pageDocument, int pageVersionId, Guid userUID)
        {
            if (pageDocument == null)
            {
                throw new Exception("Page document is null!");
            }

            bool existingDoc = false;
            int  pageId      = -1;
            int  nodeId      = -1;
            int  controlId   = -1;

            Hashtable controls = new Hashtable();


            //CHECK EXIST
            using (IDataReader reader = Database.PageDocument.GetByPageVersionId(pageVersionId))
            {
                if (reader.Read())
                {
                    existingDoc = true;
                    pageId      = (int)reader["PageId"];
                }

                reader.Close();
            }

            //Page document already exists
            if (existingDoc)
            {
                //get static node
                Node sNode = pageDocument.StaticNode;

                if (sNode != null)
                {
                    //get static node id
                    using (IDataReader reader = Database.Node.GetByUID(sNode.NodeUID, pageId))
                    {
                        if (reader.Read())
                        {
                            nodeId = (int)reader["NodeId"];
                        }

                        reader.Close();
                    }

                    //DV: 17-09-2007
                    if (nodeId == -1)
                    {
                        nodeId = Database.Node.Add(pageId, 1, sNode.NodeUID, string.Empty, string.Empty, string.Empty, 0);
                    }

                    //Update controls settings
                    if (sNode.Controls.IsModified)
                    {
                        string[] sNodeContKeys = sNode.Controls.AllKeys;

                        //Check if some controls have been deleted
                        using (IDataReader reader = Database.Control.GetByNodeId(nodeId))
                        {
                            while (reader.Read())
                            {
                                int    contId   = (int)reader["ControlId"];
                                string contUID  = reader["ControlUID"].ToString();
                                bool   contains = false;
                                for (int i = 0; i < sNodeContKeys.Length; i++)
                                {
                                    if (contUID == sNodeContKeys[i])
                                    {
                                        contains = true;
                                    }
                                }
                                if (!contains)
                                {
                                    Database.Control.Delete(contId);
                                }
                                else
                                {
                                    controls.Add(contUID, contId);
                                }
                            }

                            reader.Close();
                        }

                        //add new controls
                        foreach (string key in sNodeContKeys)
                        {
                            if (!controls.Contains(key))
                            {
                                //add control
                                int newControlId = Database.Control.Add(nodeId, key);

                                //add params
                                if (sNode.Controls[key].Params != null)
                                {
                                    string[] sNodeParamKeys = sNode.Controls[key].Params.AllKeys;
                                    for (int j = 0; j < sNodeParamKeys.Length; j++)
                                    {
                                        Database.ControlStorage.Add(newControlId, sNodeParamKeys[j], Helper.Serialize(sNode.Controls[key].Params[sNodeParamKeys[j]]));
                                    }
                                }

                                //add to hash
                                controls.Add(key, newControlId);
                            }
                        }

                        //GA 23.05.2006
                        if (controls.Count > 0)
                        {
                            for (int l = 0; l < controls.Count; l++)
                            {
                                controlId = (int)controls[sNodeContKeys[l]];
                                if (controlId > 0 && sNode.Controls[sNodeContKeys[l]].IsModified)//Update control in static node
                                {
                                    Param    param          = sNode.Controls[sNodeContKeys[l]].Params;
                                    string[] sNodeParamKeys = param.AllKeys;
                                    using (IDataReader reader = Database.ControlSettings.GetByControlId(controlId))
                                    {
                                        while (reader.Read())
                                        {
                                            int contStorId = -1;
                                            if (reader["ControlStorageId"] != DBNull.Value)
                                            {
                                                contStorId = (int)reader["ControlStorageId"];
                                            }

                                            string key      = reader["Key"].ToString();
                                            bool   contains = false;
                                            for (int k = 0; k < sNodeParamKeys.Length; k++)
                                            {
                                                if (key == sNodeParamKeys[k])
                                                {
                                                    contains = true;
                                                }
                                            }
                                            if (!contains)
                                            {
                                                if (contStorId > 0)
                                                {
                                                    Database.ControlStorage.Delete(contStorId);
                                                }
                                            }
                                        }

                                        reader.Close();
                                    }
                                    for (int k = 0; k < sNodeParamKeys.Length; k++)
                                    {
                                        using (IDataReader reader = Database.ControlSettings.GetByKeyAndControlId(sNodeParamKeys[k], controlId))
                                        {
                                            if (reader.Read())
                                            {
                                                if (reader["ControlStorageId"] != DBNull.Value)
                                                {
                                                    Database.ControlStorage.Update((int)reader["ControlStorageId"],
                                                                                   controlId, sNodeParamKeys[k], Helper.Serialize(param[sNodeParamKeys[k]]));
                                                }
                                                else
                                                {
                                                    Database.ControlStorage.Add(controlId, sNodeParamKeys[k], Helper.Serialize(param[sNodeParamKeys[k]]));
                                                }
                                            }
                                            else
                                            {
                                                Database.ControlStorage.Add(controlId, sNodeParamKeys[k], Helper.Serialize(param[sNodeParamKeys[k]]));
                                            }

                                            reader.Close();
                                        }
                                    }
                                }
                                if (controlId < 0)//Add new control to static node
                                {
                                    controlId = Database.Control.Add(nodeId, sNodeContKeys[l]);
                                    //Add control settings
                                    Param    param   = sNode.Controls[sNodeContKeys[l]].Params;
                                    string[] parKeys = param.AllKeys;
                                    for (int j = 0; j < parKeys.Length; j++)
                                    {
                                        Database.ControlStorage.Add(controlId, parKeys[j], Helper.Serialize(param[parKeys[j]]));
                                    }
                                }
                                sNode.Controls[l].IsModified = false;
                            }
                        }
                    }
                }
                //Check if some dynamic nodes have been deleted
                using (IDataReader reader = Database.Node.GetByPageId(pageId))
                {
                    while (reader.Read())
                    {
                        if ((int)reader["NodeTypeId"] == 1)//Static node
                        {
                            continue;
                        }
                        nodeId = (int)reader["NodeId"];
                        string nodeUID  = reader["NodeUID"].ToString();
                        bool   contains = false;
                        foreach (DynamicNode dn in pageDocument.DynamicNodes)
                        {
                            if (dn.NodeUID == nodeUID)
                            {
                                contains = true;
                            }
                        }
                        if (!contains)
                        {
                            Database.Node.Delete(nodeId);
                        }
                    }

                    reader.Close();
                }
                //Update dynamic nodes
                foreach (DynamicNode dn in pageDocument.DynamicNodes)
                {
                    if (dn.IsModified)
                    {
                        using (IDataReader reader = Database.Node.GetByUID(dn.NodeUID, pageId))
                        {
                            if (reader.Read())
                            {
                                nodeId = (int)reader["NodeId"];
                                Database.Node.Update((int)reader["NodeId"], (int)reader["PageId"],
                                                     2, dn.NodeUID, dn.FactoryUID, dn.FactoryControlUID, dn.ControlPlaceId,
                                                     dn.ControlPlaceIndex);
                            }
                            else
                            {
                                nodeId = Database.Node.Add(pageId, 2, dn.NodeUID,
                                                           dn.FactoryUID, dn.FactoryControlUID, dn.ControlPlaceId,
                                                           dn.ControlPlaceIndex);
                            }

                            reader.Close();
                        }//using (IDataReader reader = Database.Node.GetByUID(dn.NodeUID))
                        string[] contKeys = dn.Controls.AllKeys;

                        //Check if some controls have been deleted from dynamic node
                        using (IDataReader reader = Database.Control.GetByNodeId(nodeId))
                        {
                            while (reader.Read())
                            {
                                int    contId   = (int)reader["ControlId"];
                                string contUID  = reader["ControlUID"].ToString();
                                bool   contains = false;
                                for (int i = 0; i < contKeys.Length; i++)
                                {
                                    if (contUID == contKeys[i])
                                    {
                                        contains = true;
                                    }
                                }
                                if (!contains)
                                {
                                    Database.Control.Delete(contId);
                                }
                            }

                            reader.Close();
                        }
                        for (int i = 0; i < contKeys.Length; i++)
                        {
                            controlId = -1;
                            using (IDataReader reader = Database.Control.GetByUID(contKeys[i]))
                            {
                                while (reader.Read())
                                {
                                    //make sure that the control id is associated with the correct node
                                    //since there may be multiple instances of the control in the application
                                    if ((int)reader["NodeId"] == nodeId)
                                    {
                                        controlId = (int)reader["ControlId"];
                                        break;
                                    }
                                }

                                reader.Close();
                            }
                            if (controlId > 0 && dn.Controls[contKeys[i]].IsModified)//Update control
                            {
                                Database.Control.Update(controlId, nodeId, contKeys[i]);
                                //Update control settings
                                Param    param   = (dn.Controls[contKeys[i]]).Params;
                                string[] parKeys = param.AllKeys;
                                //Check if some settings have been deleted from control
                                using (IDataReader reader = Database.ControlSettings.GetByControlId(controlId))
                                {
                                    while (reader.Read())
                                    {
                                        int contStorId = -1;
                                        if (reader["ControlStorageId"] != DBNull.Value)
                                        {
                                            contStorId = (int)reader["ControlStorageId"];
                                        }

                                        string key      = reader["Key"].ToString();
                                        bool   contains = false;
                                        for (int k = 0; k < parKeys.Length; k++)
                                        {
                                            if (key == parKeys[k])
                                            {
                                                contains = true;
                                            }
                                        }
                                        if (!contains)
                                        {
                                            if (contStorId > 0)
                                            {
                                                Database.ControlStorage.Delete(contStorId);
                                            }
                                        }
                                    }

                                    reader.Close();
                                }
                                for (int k = 0; k < parKeys.Length; k++)
                                {
                                    using (IDataReader reader = Database.ControlSettings.GetByKeyAndControlId(parKeys[k], controlId))
                                    {
                                        if (reader.Read())                                  //Update control settings
                                        {
                                            if (reader["ControlStorageId"] != DBNull.Value) //Update settings in control storage
                                            {
                                                Database.ControlStorage.Update((int)reader["ControlStorageId"],
                                                                               controlId, parKeys[k], Helper.Serialize(param[parKeys[k]]));
                                            }
                                            else //Add settings to ControlStorage
                                            {
                                                Database.ControlStorage.Add(controlId, parKeys[k], Helper.Serialize(param[parKeys[k]]));
                                            }
                                        }
                                        else //Add new control settings
                                        {
                                            Database.ControlStorage.Add(controlId, parKeys[k], Helper.Serialize(param[parKeys[k]]));
                                        }

                                        reader.Close();
                                    }
                                }
                            }
                            if (controlId < 0)//Add new control
                            {
                                controlId = Database.Control.Add(nodeId, contKeys[i]);
                                //Add control settings
                                //foreach (Param param in dn.Controls[contKeys[i]].Params)
                                //{
                                Param    param   = dn.Controls[contKeys[i]].Params;
                                string[] parKeys = param.AllKeys;
                                for (int j = 0; j < parKeys.Length; j++)
                                {
                                    Database.ControlStorage.Add(controlId, parKeys[j], Helper.Serialize(param[parKeys[j]]));
                                }
                                //}
                            }
                        } //for (int i = 0; i < contKeys.Length; i++)
                    }     //if(dn.IsModified)
                }         //foreach (DynamicNode dn in pageDocument.DynamicNodes)
            }             //if (ExistingDoc)
            else          //New document
            {
                //Add new document
                pageId = Database.PageDocument.Add(pageVersionId);
                //Add static node
                nodeId = Database.Node.Add(pageId, 1, pageDocument.StaticNode.NodeUID, "", "", "0", 0);
                //Add static node controls
                string[] sNodeContKeys = pageDocument.StaticNode.Controls.AllKeys;
                for (int i = 0; i < sNodeContKeys.Length; i++)
                {
                    controlId = Database.Control.Add(nodeId, sNodeContKeys[i]);
                    if (pageDocument.StaticNode.Controls[sNodeContKeys[i]].Params != null)
                    {
                        string[] sNodeParamKeys = pageDocument.StaticNode.Controls[sNodeContKeys[i]].Params.AllKeys;
                        for (int j = 0; j < sNodeParamKeys.Length; j++)
                        {
                            Database.ControlStorage.Add(controlId, sNodeParamKeys[j], Helper.Serialize(pageDocument.StaticNode.Controls[sNodeContKeys[i]].Params[sNodeParamKeys[j]]));
                        }
                    }
                }//for (int i = 0; i < sNodeContKeys.Length; i++)

                //Add dynamic node controls
                foreach (DynamicNode dn in pageDocument.DynamicNodes)
                {
                    nodeId = Database.Node.Add(pageId, 2, dn.NodeUID, dn.FactoryUID,
                                               dn.FactoryControlUID, dn.ControlPlaceId, dn.ControlPlaceIndex);
                    string[] dNodeContKeys = dn.Controls.AllKeys;
                    for (int i = 0; i < dNodeContKeys.Length; i++)
                    {
                        controlId = Database.Control.Add(nodeId, dNodeContKeys[i]);
                        Param param = dn.Controls[dNodeContKeys[i]].Params;
                        if (param == null)
                        {
                            continue;
                        }
                        string[] dNodeParamKeys = param.AllKeys;
                        for (int j = 0; j < dNodeParamKeys.Length; j++)
                        {
                            Database.ControlStorage.Add(controlId, dNodeParamKeys[j], Helper.Serialize(param[dNodeParamKeys[j]]));
                        }
                    }
                }
            }
        }
Exemplo n.º 9
0
 /// <summary>
 /// Initializes a new instance of the <see cref="DynamicNodeCollection"/> class.
 /// </summary>
 /// <param name="ownerDocument">The owner document.</param>
 public DynamicNodeCollection(PageDocument ownerDocument)
 {
     _ownerDocument = ownerDocument;
 }