C# 如何使用DropNet检查DropBox中是否存在文件夹
我正在编写一个应用程序,通过使用DropNet API与dropbox交互。我想检查文件夹是否存在或不在dropbox上,以便我将创建一个文件夹,然后在上面上载文件。一切正常,但如果我的文件夹存在,它抛出异常。像这样:C# 如何使用DropNet检查DropBox中是否存在文件夹,c#,dropbox,dropnet,C#,Dropbox,Dropnet,我正在编写一个应用程序,通过使用DropNet API与dropbox交互。我想检查文件夹是否存在或不在dropbox上,以便我将创建一个文件夹,然后在上面上载文件。一切正常,但如果我的文件夹存在,它抛出异常。像这样: if (isAccessToken) { byte[] bytes = File.ReadAllBytes(fileName); try { string dropboxFolder = "/Public/DropboxManagement
if (isAccessToken)
{
byte[] bytes = File.ReadAllBytes(fileName);
try
{
string dropboxFolder = "/Public/DropboxManagement/Logs" + folder;
// I want to check if the dropboxFolder is exist here
_client.CreateFolder(dropboxFolder);
var upload = _client.UploadFile(dropboxFolder, fileName, bytes);
}
catch (DropNet.Exceptions.DropboxException ex) {
MessageBox.Show(ex.Response.Content);
}
}
我不熟悉dropnet,但看看源代码,您应该可以使用
\u客户端
对象的方法来实现这一点。此方法返回一个对象
例如:
//gets contents at requested path
var metaData = _client.GetMetaData("/Public/DropboxManagement/Logs");
//without knowing how this API works, Path may be a full path and therefore need to check for "/Public/DropboxManagement/Logs" + folder
if (metaData.Contents.Any(c => c.Is_Dir && c.Path == folder)
{
//folder exists
}
我不熟悉dropnet,但看看源代码,您应该可以使用
\u客户端
对象的方法来实现这一点。此方法返回一个对象
例如:
//gets contents at requested path
var metaData = _client.GetMetaData("/Public/DropboxManagement/Logs");
//without knowing how this API works, Path may be a full path and therefore need to check for "/Public/DropboxManagement/Logs" + folder
if (metaData.Contents.Any(c => c.Is_Dir && c.Path == folder)
{
//folder exists
}
我不熟悉dropnet,但看看源代码,您应该可以使用
\u客户端
对象的方法来实现这一点。此方法返回一个对象
例如:
//gets contents at requested path
var metaData = _client.GetMetaData("/Public/DropboxManagement/Logs");
//without knowing how this API works, Path may be a full path and therefore need to check for "/Public/DropboxManagement/Logs" + folder
if (metaData.Contents.Any(c => c.Is_Dir && c.Path == folder)
{
//folder exists
}
我不熟悉dropnet,但看看源代码,您应该可以使用
\u客户端
对象的方法来实现这一点。此方法返回一个对象
例如:
//gets contents at requested path
var metaData = _client.GetMetaData("/Public/DropboxManagement/Logs");
//without knowing how this API works, Path may be a full path and therefore need to check for "/Public/DropboxManagement/Logs" + folder
if (metaData.Contents.Any(c => c.Is_Dir && c.Path == folder)
{
//folder exists
}
非常感谢你的帮助!我知道了。顺便说一下,你可能根本不需要创建文件夹。在Dropbox中写入文件时,会隐式创建文件夹。(因此,如果您编写一个文件
/Public/DropboxManagement/Logs/hello.txt
,必要时将创建文件夹/Public/DropboxManagement/Logs
)。非常感谢您的帮助!我知道了。顺便说一下,你可能根本不需要创建文件夹。在Dropbox中写入文件时,会隐式创建文件夹。(因此,如果您编写一个文件/Public/DropboxManagement/Logs/hello.txt
,必要时将创建文件夹/Public/DropboxManagement/Logs
)。非常感谢您的帮助!我知道了。顺便说一下,你可能根本不需要创建文件夹。在Dropbox中写入文件时,会隐式创建文件夹。(因此,如果您编写一个文件/Public/DropboxManagement/Logs/hello.txt
,必要时将创建文件夹/Public/DropboxManagement/Logs
)。非常感谢您的帮助!我知道了。顺便说一下,你可能根本不需要创建文件夹。在Dropbox中写入文件时,会隐式创建文件夹。(因此,如果您编写一个文件/Public/DropboxManagement/Logs/hello.txt
,必要时将创建文件夹/Public/DropboxManagement/Logs
。)