首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >无法将“System.IO.FileSystemInfo[]”类型的对象强制转换为System.IO.FileSystemInfo[]类型

无法将“System.IO.FileSystemInfo[]”类型的对象强制转换为System.IO.FileSystemInfo[]类型
EN

Stack Overflow用户
提问于 2016-02-10 11:21:08
回答 1查看 1.5K关注 0票数 1

我在PCL中遇到了以下方法的强制转换错误,这在遗留类库中没有问题。

代码语言:javascript
复制
    protected FolderInfo GetFolderInfo(string folderPath, int level = 0)
    {
        FolderInfo folderInfo = new FolderInfo(folderPath);

        if (settings.MaxDepthLevel == 0 || level < settings.MaxDepthLevel)
        {
            try
            {
                DirectoryInfo currentDirectoryInfo = new DirectoryInfo(folderPath);

                foreach (DirectoryInfo directoryInfo in currentDirectoryInfo.GetDirectories())
                {
                    if (settings.SkipHiddenFolders && directoryInfo.Attributes.HasFlag(FileAttributes.Hidden))
                    {
                        continue;
                    }

                    FolderInfo subFolderInfo = GetFolderInfo(directoryInfo.FullName, level + 1);
                    folderInfo.Folders.Add(subFolderInfo);
                    subFolderInfo.Parent = folderInfo;
                }

                foreach (FileInfo fileInfo in currentDirectoryInfo.EnumerateFiles())
                {
                    if (settings.SkipHiddenFiles && fileInfo.Attributes.HasFlag(FileAttributes.Hidden))
                    {
                        continue;
                    }

                    folderInfo.Files.Add(fileInfo);
                }

                folderInfo.Files.Sort((x, y) => x.Name.CompareTo(y.Name));
            }
            catch (UnauthorizedAccessException)
            {
            }
        }

        return folderInfo;
    }

我得到以下错误:

引发的异常:“'System.Collections.Generic.IEnumerable`1System.IO.DirectoryInfo'.”中的“System.InvalidCastException”附加信息:无法将“System.IO.FileSystemInfo[]”类型的对象强制转换为键入System.IO.FileSystem.dll

在PCL中,我在“工作”代码上面写这段代码的方式有多不同?

谢谢,并向迈克尔问好

EN

回答 1

Stack Overflow用户

发布于 2016-02-10 13:24:55

Windows Phone应用程序不使用操作系统的文件系统,仅限于使用隔离存储来持久化和访问文件,因此此命名空间不提供任何附加功能。

http://msdn.microsoft.com/en-us/library/windowsphone/develop/system.io%28v=vs.105%29.aspx

您还应该看看这个SO answer.

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/35313780

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档