asp.net mvc 2-Rackspace云文件c#,将文件添加到目录中

本文关键字:文件 添加 mvc net 2-Rackspace asp | 更新日期: 2023-09-27 18:00:31

使用rackspace云文件将文件添加到特定目录,c#bindings api更具体地引用:https://github.com/rackspace/csharp-cloudfiles

出于某种奇怪的原因,做了一些类似的事情:

    public static void UploadFile(CSImageDTO file)
    {
        var connection = new Connection(UserCredentials);
        var containerItemList = connection.GetContainerItemList(ContainerName);
        if (!containerItemList.Contains(file.Filename))
            connection.PutStorageItem(ContainerName, file.File, Path.Combine(MyPath, Path.GetFileName(file.Filename)));
        else
            throw new NotSupportedException("we dont know what to do now...");
    }

假定MyPath="Funky";

这会添加这样的文件:

  • 有趣/Image1.jpg
  • Funky/Image5.png

我可以使用Path.GetFileName(filepath)获取文件路径并将其返回到视图,但我想知道我的文件没有存储在"Funky"目录下,而是实际的文件名称为"Funky/Image1.png"?或者说它是用我的代码出现的:

 public static IEnumerable<string> GetFiles()
        {
            var connection = new Connection(UserCredentials);
            var parameters = new Dictionary<GetItemListParameters, string>();
            //parameters.Add(GetItemListParameters.Path, MyPath);
            var containerItemList = connection.GetContainerItemList(ContainerName, parameters)
                .Where(x => Path.HasExtension(x));
            //.Select(x => Path.GetFileName(x));
            return containerItemList;
        }

另请注意:我必须使用这个过滤器来确保我不会取回文件夹。。。

.Where(x => Path.HasExtension(x));

asp.net mvc 2-Rackspace云文件c#,将文件添加到目录中

因为它是一个平面文件系统。。。