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));
因为它是一个平面文件系统。。。