2013-12-08 5 views
2

Я пытаюсь загрузить файл в свою корзину Amazon S3, и все примеры кода дают мне что-то вроде этого: ///////////// //////////////////////Не удалось найти тип или пространство имен AmazonS3

using System; 
using Amazon; 
using Amazon.S3; 
using Amazon.S3.Model; 
string accessKey = "put your access key here!"; 
string secretKey = "put your secret key here!"; 

AmazonS3Config config = new AmazonS3Config(); 
config.ServiceURL = "objects.dreamhost.com"; 

AmazonS3 client = Amazon.AWSClientFactory.CreateAmazonS3Client(
     accessKey, 
     secretKey, 
     config 
     ); 

///////////////////// /////////////// Проблема заключается в том, что клиент Amazon S3 не находит сборку или ссылку, и когда я нажимаю на опции, чтобы помочь связать ее, единственный вариант, который появляется для создания класса для AmazonS3. У меня есть amazon aws для sdk.net, установленного через nuget. Помимо «AmazonS3», все остальное прекрасно. //////////////// UPDATE /////////////////// Это не было весело, оно потеряло первый половина моего дня :(Я собираюсь опубликовать это, чтобы, возможно, кто-то еще мог использовать код. Я не знаю, почему я не мог найти что-либо в Интернете об этом. Вот он:

AmazonS3Config config = new AmazonS3Config(); 
     config.ServiceURL = "http://s3-us-west-2.amazonaws.com(your service URL)"; 
     Amazon.S3.IAmazonS3 s3Client = AWSClientFactory.CreateAmazonS3Client("Id", "Key", config); 
     String S3_KEY = "Test.txt"; 
     PutObjectRequest request = new PutObjectRequest(); 

     request.BucketName = "Your Bucket Name"; 
     request.Key = S3_KEY; 
     request.ContentBody = "This is body of S3 object."; 
     s3Client.PutObject(request); 
+1

я верю тебе нужно найти эту ссылку на сборку и добавить ее в проект, иначе бы не было способа ее компиляции без ccess для сборки, которая имеет ссылку. выполните поиск на своем локальном диске, чтобы скачать SDK (если есть), вместо nuget. Может, нугет не добавил? –

+0

Я переустановил sdk самостоятельно, и он все еще не работал. Я вручную переделал код, который занял некоторое время, но теперь он работает. Спасибо хоть :) – Digit

ответ

1

он появляется в шаблон консольного приложения AWS с помощью AWS SDK, они фактически не называют AmazonS3 класс напрямую. то, что они делают, это вызвать интерфейс IAmazonS3 вместо этого. Попробуйте заменить AmazonS3 с IAmazonS3 и он должен работать.

Смежные вопросы