首页 > 解决方案 > DirectoryInfo.在 Windows Server 2016 上创建截断目录名称

问题描述

我们正在将我们的应用程序移动到新的 Windows 服务器(2012 到 2016)。代码和数据库是相同的,并且在 2012 上正常工作(VS 2012 .net Framework 4.5)。基本上,在上传文件时,应用程序会将文件放在某些目录中。如果目录不存在,则创建它。创建目录的代码:

     var fpath = Path.Combine(FileSystemHelper.RepositoryAttaPath, vault);
        var di = new DirectoryInfo(fpath);
        //create the folder if does not exists
        if (!di.Exists)
            di.Create()

这在 2012 服务器上运行良好,但会截断 2016 服务器上的保管库文件夹。例如,如果在 c:\tmp 下创建一个名为 RASTER 的新文件夹,则会发生以下情况:

2012 服务器 c:\tmp\RASTER 创建。
2016 服务器 c:\tmp\RAS 创建。

相同的代码只是不同的服务器。什么可能导致名称被截断?

标签: c#directoryinfo

解决方案


推荐阅读