«Поделиться публично» в Google Storage с помощью SharpGs - PullRequest
2 голосов
/ 28 апреля 2011

Используя SharpGs в качестве клиента Google Storage в .NET, я пробовал это, но это не работает:

foreach (var o in bucket.Objects)
{
  o.Acl.CleanEntries();
  o.Acl.AddEntry(SharpGs.Acl.AclPermission.FULL_CONTROL, SharpGs.Acl.ScopeType.AllUsers);
  o.Acl.Save();
}

1 Ответ

2 голосов
/ 19 сентября 2011

Когда вы делаете «o.Acl» внутри foreach, вы выполняете запрос к серверу (он находится внутри метода получения свойства «Acl»), поэтому в каждой из 3 строк цикла вы выбираете acl с сервера и сбрасываетестарое значениеИтак, вы должны сделать что-то вроде этого:

var acl = o.Acl;
acl.CleanEntries();
acl.AddEntry(SharpGs.Acl.AclPermission.FULL_CONTROL, SharpGs.Acl.ScopeType.AllUsers);
acl.Save();
...