【问题标题】:Google Drive API VB.NET Parent Folder of a FolderGoogle Drive API VB.NET 文件夹的父文件夹
【发布时间】:2019-11-14 19:20:48
【问题描述】:

我正在尝试通过 vb.net 使用 Google Drive API。 看了很多帖子,不明白如何选择合适的文件夹来添加文件。

我有很多“备份”文件夹,但我现在假设我想在“MyApp1”文件夹下的“备份”文件夹中添加一个文件。

我正在这样做,但我不知道如何继续。我搜索了我所有的“备份”文件夹,我需要检查哪个在父文件夹“Myapp”下。

    Public Shared Function TheRightFolder() As Boolean

    Try
        Dim FolderName As String = "Backup"
        Dim ParentName As String = "MyAPP1"
        Dim result As Boolean = False

        Dim request = Service.Files.List()
        Dim requeststring As String = ("mimeType='application/vnd.google-apps.folder' And trashed=false and title='" & FolderName & "'")
        request.Q = requeststring
        Dim Parent = request.Execute()

        For Each item As File In Parent.Items
            'Get PARENT NAME OF THE FOLDER TO CHECK IF I AM INSERT IN MY FILE IN THE RIGHT DIRECTORY (USING 'item.Parents DATA'?)
            '...
            If ParentName = new_func_to_get_parent_folder_name Then
                Return True
            End If
        Next
    Catch EX As Exception
        MsgBox("ERROR" & EX.Message)
    End Try
    Return False

End Function

我做错了什么?

我是否需要改变思维方式才能获得正确的文件夹?

提前致谢!

【问题讨论】:

    标签: vb.net google-drive-api directory parent


    【解决方案1】:

    您必须共享创建的文件夹。

    'Comparte la carpeta creada
    
    Dim userPermission As Permission = New Permission()
    userPermission.Type = "anyone"
    userPermission.Role = "writer"
    Dim request4 = eDRIVEService.Permissions.Create(userPermission, Results2.Files.Item(0).Id.ToString)
    request4.Fields = "id"
    request4.Execute()
    

    【讨论】:

      【解决方案2】:

      找到解决方案:

      Public Shared Sub ParentsInFolder(ByVal folderId As String)
      
          Dim request As ParentsResource.ListRequest = Service.Parents.List(folderId)
          Try
              Dim parents As ParentList = request.Execute()
              For Each parent As ParentReference In parents.Items
                  Dim FileId As String = parent.Id.ToString
                  InfoFromID(Service, FileId)
              Next
          Catch e As Exception
              MsgBox("Errore: " & e.Message)
          End Try
      
      End Sub
      

      还有:

          Public Shared Sub InfoFromID(ByVal Service As DriveService, fileId As String)
          Try
              Dim file As File = service.Files.Get(fileId).Execute
      
              Dim Title As String = file.Title
              Dim MimeType As String = file.MimeType.ToString
              Dim description As String = file.Description
      
          Catch e As Exception
              MsgBox("Errore: " + e.Message)
          End Try
      End Sub
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2021-12-24
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2020-01-06
        相关资源
        最近更新 更多