2013-08-14 1 views
1

Я хочу обновить разрешение некоторых файлов на Google Диске, используя google drive api v2. все работает нормально, список файлов, вставка разрешений, .... только с обновлением разрешений. У меня проблема, но только если я хочу изменить владельца!google drive api change owner/transferowner

Существует параметр, называемый «transferOwnership», если я установил его на https://developers.google.com/drive/v2/reference/permissions/update «попробуй», чтобы все работало нормально, но я не знаю/не могу найти способ установить этот параметр в моем коде !?

Надеюсь, что кто-то может мне помочь, вот что мне нужно для завершения моего приложения.

благодаря Markus

+0

привет за ваш ответ, но это не отвечает на мой вопрос, я думаю. – user2682653

ответ

1

Вы должны инициализировать новый Permission экземпляр или использовать существующий для изменения Role, Type и Value поля:

Permission p = new Permission(); 
p.Role = "owner"; 
p.Type = "user"; 
p.Value = "[email protected]"; 
service.Permissions.Update(p, fileId, permissionId); 
0

Я думаю, это то, что вы хотите:

var permissionresult = UpdatePermission(service, "fileid", "permissionid", "owner"); 


public static Permission UpdatePermission(DriveService service, String fileId, 
    String permissionId, String newRole) 
{ 
    try 
    { 
     // First retrieve the permission from the API. 
     Permission permission = service.Permissions.Get(fileId, permissionId).Execute(); 
     permission.Role = newRole; 

     //Call the TransferOwnership property 
     var updatePermission = service.Permissions.Update(permission, fileId, permissionId); 
     updatePermission.TransferOwnership = true; 
     return updatePermission.Execute(); 
    } 
    catch (Exception e) 
    { 
     Console.WriteLine("An error occurred: " + e.Message); 
    } 
    return null; 
}