首页 > 其他分享 >项目管理工具----普加项目管理中间件(PlusProject )入门教程(11):msProject项目的导入和导出(上)

项目管理工具----普加项目管理中间件(PlusProject )入门教程(11):msProject项目的导入和导出(上)

时间:2023-09-08 16:31:46浏览次数:63  
标签:11 xml string uploadFile 项目管理 中间件 FileName project mpp

普加项目管理中间件是用于跨浏览器和跨平台应用程序的功能齐全的 Gantt 图表,可满足项目管理应用程序的所有需求,是最完善的甘特图图表库。

除了上文介绍的加载json数据的方式展示外,更常用的方式是导入。

普加项目管理中间件支持导入微软project两种格式的文件,xml和mpp,这里的文件解析都是后台处理的,本文以.net为例。

前端提供了这样一个方法,可以弹出一个选择文件上传的窗口

var win = new PlusProject.ImportProjectWindow({
            project: this.project
        });
        win.setData();
        win.show();

上传之后后台接收文件,进行处理。

Object ImportProject()
    {
        //获取程序路径
        string tempFile = Request.PhysicalApplicationPath;
        string path = tempFile + "Upload\\";
        //找到目标文件对象
        HttpPostedFile uploadFile = Request.Files["Fdata"];
        bool isMPP = uploadFile.FileName.IndexOf(".mpp") != -1;
        bool isXML = uploadFile.FileName.IndexOf(".xml") != -1;
        if (!isXML && !isMPP)
        {
            throw new Exception("请上传导入.xml或.mpp文件!");
        }
        string FileName = uploadFile.FileName;
        FileName = FileName.Replace(".mpp", "");
        FileName = FileName.Replace(".xml", "");
        FileName = FileName + "_" + DateTime.Now.ToString("yyyyMMddhhmmss") + (isMPP ? ".mpp" : ".xml");

        // 如果有文件,则保存到一个地址
        if (uploadFile.ContentLength > 0)
        {
            string filePath = string.Format("{0}{1}{2}", tempFile, "Upload\\", FileName);
            uploadFile.SaveAs(filePath);
            //读取xml,保存项目
            Hashtable project = null;
            try
            {
                project = PluSoft.Utils.PlusProject.Read(path + FileName, false);
            }
            catch (Exception e)
            {
                throw e;
            }
            finally
            {
                System.IO.File.Delete(filePath);
            }
            return project;
        }
        return null;
    }

标签:11,xml,string,uploadFile,项目管理,中间件,FileName,project,mpp
From: https://blog.51cto.com/u_16081226/7411528

相关文章

  • 计算2111苏峻威
    |这个作业属于哪个课程|https://edu.cnblogs.com/campus/jmu/ComputerScience21/||-----------------|---------------||这个作业要求在哪里|https://edu.cnblogs.com/campus/jmu/ComputerScience21/homework/13033||这个作业的目标|Github的使用|自我介绍这是......
  • AutoC平台搭建指南(基于NXP i.MX RT1170 MCUXPresso开发环境建设 @Like)
    AutoC平台搭建指南(基于NXPi.MXRT1170MCUXPresso开发环境建设@Like)(2022-11-17)目录1.功能需求 2.硬件平台 3.软件工具环境 4.建设基础 5.安装开发工具和环境 5.1.MCUXpressoIDE 5.2.i.MXRT1170SDK 5.3.GUI-Guider-1.4.1-GA 6.创建应用工程 6.1.导入SDK例程 6.1.1.......
  • AutoC平台搭建指南(基于NXP i.MX RT1170 MCUXPresso开发环境建设 @Like)
    AutoC平台搭建指南(基于NXPi.MXRT1170MCUXPresso开发环境建设@Like)(2022-11-17) 目录1.功能需求2.硬件平台3.软件工具环境4.建设基础5.安装开发工具和环境5.1.MCUXpressoIDE5.2.i.MXRT1170SDK5.3.GUI-Guider-1.4.1-GA6.创建应用工程6.1.导入SDK例程6......
  • 线程安全的队列:使用Monitor模式和C++11多线程库
    线程安全的队列:使用Monitor模式和C++11多线程库引言在多线程编程中,数据共享是一个关键的问题。如果多个线程需要访问同一个数据结构,不正确的管理会导致数据不一致甚至程序崩溃。本文将介绍如何使用C++11的多线程库和Monitor模式来实现一个线程安全的队列。Monitor模式Monitor模式......
  • 【230908-11】六对数函数图像比较
    【图像】【代码】<!DOCTYPEhtml><htmllang="utf-8"><metahttp-equiv="Content-Type"content="text/html;charset=utf-8"/><head><title>六对数函数比较</title><styletype="text/css"&......
  • CF1103C 题解
    2023-09-0514:52:07solution找路径很好找,我们随便跑个dfs树找个深度\(\ge\frac{n}{k}\)的路径输出即可。可是怎么找\(k\)个长度不是\(3\)的倍数的环呢?既然我们跑了dfs树,那么就没有横叉边,对于叶子节点非树边只有返祖边,然后一看这个很奇怪的条件——保证每个点度数大......
  • 集美大学计算2111张艺勇
    这个作业属于哪个课程计算2111这个作业要求在哪里工程概论开篇(第一次作业)这个作业的目标Github和Git工具的使用,Markdown文档编写,工程概论课程初步了解自我介绍我来自集美计算机工程学院,曾任科创委员、文体委员、辅导员助理、党建助手,现任班助,院就业会主......
  • qt程序调用cuda-11.7,cmake编译时,提示:"CMakeCUDACompilerId.cu" failed. Compiler:
    报错显示:Running/home/wc/software/cmake-3.26.3-linux-x86_64/bin/cmake/home/wc/work/junke_src/missile-sim'-GCodeBlocks-UnixMakefiles'in/home/wc/work/junke_src/build/debug.CMakeErrorat/home/wc/software/cmake-3.26.3-linux-x86_64/share/cmak......
  • jiangyuchen12码风 截至 2022-12-27 11:09
    最后一条码风改之前的记录那么多人的博客都有TA的码风,我也写一下吧头文件一般使用万能头文件,因为绝对看不到[Error]'***'doesnotnameatype之类的错误常量有,一般是K,N,看题目变量名字变量输入&输出一般用cin,cout大括号写题是这样while(1){……}具体......
  • 项目管理实践与案例
    一、实践是最好的学习方法什么是“学习”?“学”是去了解,认知,知道的一个过程,“习”是要把了解的,认知的,知道的东西通过实践来深刻体会,接下来我从时间管理、目标管理、计划管理、高效沟通、思维创新、团队学习等方面总结了几个自我管理工具,供大家学习参考。1.1:时间管理----用“四象......