Wednesday, 6 September 2017

Create Document In Kentico using API

private bool CreateDocument()
    {
        // Create an instance of the Tree provider first
        TreeProvider tree = new TreeProvider(MembershipContext.AuthenticatedUser);
        // Get the parent node - the API Example folder
        TreeNode parentNode = tree.SelectSingleNode(SiteContext.CurrentSiteName, "/BoardPortal/LakeView-Board-Document", "en-us");

        TreeNode nodeFile = tree.SelectSingleNode(SiteContext.CurrentSiteName, "/Board-Document-pdf", "en-us");

        if (parentNode != null)
        {
            DataTable dt = ReadCsvFile();
          
            foreach (DataRow dr in dt.Rows)
            {
                TreeNode newNode = TreeNode.New("custom.LakeView_Board_Document", tree);//CMS.MenuItem
                //Guid guid = Guid.NewGuid();
                newNode.NodeName = dr["DocumentTitle"].ToString();
                newNode.NodeGUID = Guid.NewGuid();
                //newNode.DocumentName = dr["DocumentTitle"].ToString();
                newNode.NodeAlias = dr["DocumentTitle"].ToString().Replace(" ", "-");             
                //newNode.DocumentCulture = "en-us";             
                newNode.SetValue("Title", dr["DocumentTitle"].ToString());
                newNode.SetValue("Description", dr["Description"].ToString());
                newNode.SetValue("DocumentDate", DateTime.ParseExact(dr["DocumentDate"].ToString(), "dd-MM-yyyy", null));
                newNode.SetValue("IsBoard", Convert.ToBoolean(dr["IsBoard"]));
                newNode.SetValue("IsOperating", Convert.ToBoolean(dr["IsOperating"]));
                newNode.SetValue("DocumentTypes", dr["DocumentType"].ToString());
                newNode.SetValue("DocumentPath", dr["DocumentPath"].ToString());
                newNode.SetValue("CreatedDate", DateTime.ParseExact(dr["CreatedDate"].ToString(), "dd-MM-yyyy", null));
                newNode.SetValue("StartDate", DateTime.ParseExact(dr["StartDate"].ToString(), "dd-MM-yyyy", null));
                newNode.SetValue("EndDate", DateTime.ParseExact(dr["EndDate"].ToString(), "dd-MM-yyyy", null));
                //newNode.DocumentName = dr["DocumentTitle"].ToString();
                newNode.Insert(parentNode.NodeID);//parentNode
                //DocumentHelper.InsertDocument(newNode, parentNode.NodeID, tree);
                //  CMS.WorkflowEngine.DocumentHelper.InsertDocument(node, parent, tree);
                newNode.Publish();              
            }
            return true;
        }
        return false;
    }

No comments:

Post a Comment