Это должно быть выражение Python, которое, когда eval'd, создает объект с теми же самыми свойствами как этот. Например, если Вы имеете Fraction
класс, который содержит два целых числа, числитель и знаменатель, Ваш __repr__()
, метод был бы похож на это:
# in the definition of Fraction class
def __repr__(self):
return "Fraction(%d, %d)" % (self.numerator, self.denominator)
Предположение, что конструктор принимает те два значения.
Я могу вмешаться, сказав, что мы используем Affirma ThreeSharp, возможно, около года. Я почти уверен, что в первый раз, когда мы использовали S3, мы использовали библиотеку SOAP от Amazon, что было, конечно, не так просто, как ThreeSharp от Affirma.
Я также считаю, что это очень надежно, даже при выполнении пакетной работы и выгрузке / выгрузке больших объемов данных. Кажется, что проект не так сильно обновляется, но тогда мы не чувствовали, что он когда-либо нуждался в обновлении!
Пример кода: Примерно так будет загружен файл:
m_config = new ThreeSharpConfig
{
AwsAccessKeyID = Core.ConfigSettings.AmazonS3AccessKey,
AwsSecretAccessKey = Core.ConfigSettings.AmazonS3SecretAccessKey,
ConnectionLimit = 40,
IsSecure = true
};
m_service = new ThreeSharpQuery(m_config);
using (var request = new ObjectAddRequest(amazonS3BucketName, fileName.Replace(' ', '_')))
{
request.Headers.Add("x-amz-acl", "public-read-write");
request.LoadStreamWithBytes(fileData);
if (redirectUrl != null)
{
request.RedirectUrl = redirectUrl;
}
using (ObjectAddResponse response = m_service.ObjectAdd(request))
{ }
}
Изменить: Amazon теперь запустила свою собственную библиотеку .Net для своих веб-сервисов (включая S3), поэтому Affirma больше не поддерживает свою библиотеку.
http://aws.amazon .com / sdkfornet /
Мне повезло больше с LitS3. Устройство ThreeSharp время от времени загружало файлы с 0 байтами и, откровенно говоря, немного перестроено для решения проблемы, которую оно решает.
Похоже, официальная библиотека теперь - « AWS SDK для .NET », доступная здесь: http: // aws .amazon.com / sdkfornet /
Похоже, он включает:
Он поддерживает: