我已经使用了这个指南drive quickstart并成功地在控制台应用程序中使用了它。
现在我正在尝试在mvc应用程序中执行相同的操作,但在创建新的FileStream时出错。
代码的使用在mvc中完全相同,而这次是由按钮点击触发的。这是我的代码:
using (var stream = new FileStream("client_secret.json", FileMode.Open, FileAccess.Read))
{
string credPath = System.Environment.GetFolderPath(
System.Environment.SpecialFolder.Personal);
credPath = Path.Combine(credPath, ".credentials/drive-dotnet-quickstart.json");
credential = GoogleWebAuthorizationBroker.AuthorizeAsync(
GoogleClientSecrets.Load(stream).Secrets,
Scopes,
"user",
CancellationToken.None,
new FileDataStore(credPath, true)).Result;
Console.WriteLine("Credential file saved to: " + credPath);
}
// Create Drive API service.
var service = new DriveService(new BaseClientService.Initializer()
{
HttpClientInitializer = credential,
ApplicationName = ApplicationName,
});
// Define parameters of request.
FilesResource.ListRequest listRequest = service.Files.List();
listRequest.PageSize = 10;
listRequest.Fields = "nextPageToken, files(id, name)";
// List files.
IList<Google.Apis.Drive.v3.Data.File> files = listRequest.Execute()
.Files;
我在'使用时遇到错误(var stream = new FileStream(“client_secret.json”,FileMode.Open,FileAccess.Read))'
我的'client_secret.json'文件存储在我的mvc项目的根目录下。 我已完成以下步骤:选择client_secret.json,然后转到“属性”窗口并将“复制到输出目录”字段设置为“始终复制”。
为什么这不适用于我的mvc-app?
我得到的错误是'System.IO.FileNotFoundException' - '{“找不到文件c:\ windows \ system32 \ inetsrv \ client_secret.json。”:“c:\ windows \ system32 \ inetsrv \ client_secret.json “}“