2009-01-12 21 views
5

Amazon Web Services gelen itemsearch kullanarak bir C# örnek verebilir misiniz. C# kullanarak Ben buna yakın bile gelen herhangi bir örnek bulamıyorum. Çevrimiçi olan tüm örnekler günceldir ve AWS'nin daha yeni sürümü ile çalışmaz.birisi ben Sanatçı ve başlık bilgilerini sorgulamak ve geri albüm kapağı almak için Amazon Web Services kullanmaya çalışıyorum

+0

Öğeleri aramayı aşağıdakileri temel alarak işe aldınız mı? Ben de çalışan ama yanı şu :( – leen3o

+0

de çok şans olmamasından ulaşmaya çalışıyorum. Fazla şans sahip değil. Aşağıda seçilen cevabı çok yardımcı olmuyor. – Dylan

cevap

1

Eğer bu değer ne için gidin. Bu, kitap bilgilerini görüntülemek için bir Asp.Net denetimi içindeki koddur. Muhtemelen amacınıza uygun şekilde kolayca adapte edebilirsiniz. Ya da en azından bir başlangıç ​​noktası ver. Gerçekten istiyorsan, kontrolü bir araya getirip yolunu göndermekten mutluluk duyarım.

if (!(string.IsNullOrEmpty(ISBN) && string.IsNullOrEmpty(ASIN))) 
{ 
    AWSECommerceService service = new AWSECommerceService(); 
    ItemLookup lookup = new ItemLookup(); 
    ItemLookupRequest request = new ItemLookupRequest(); 

    lookup.AssociateTag = ConfigurationManager.AppSettings["AssociatesTag"]; 
    lookup.AWSAccessKeyId = ConfigurationManager.AppSettings["AWSAccessKey"]; 
    if (string.IsNullOrEmpty(ASIN)) 
    { 
     request.IdType = ItemLookupRequestIdType.ISBN; 
     request.ItemId = new string[] { ISBN.Replace("-", "") }; 
    } 
    else 
    { 
     request.IdType = ItemLookupRequestIdType.ASIN; 
     request.ItemId = new string[] { ASIN }; 
    } 
    request.ResponseGroup = ConfigurationManager.AppSettings["AWSResponseGroups"].Split(new char[] { ' ', ',', ';' }, StringSplitOptions.RemoveEmptyEntries); 

    lookup.Request = new ItemLookupRequest[] { request }; 
    ItemLookupResponse response = service.ItemLookup(lookup); 

    if (response.Items.Length > 0 && response.Items[0].Item.Length > 0) 
    { 
     Item item = response.Items[0].Item[0]; 
     if (item.MediumImage == null) 
     { 
      bookImageHyperlink.Visible = false; 
     } 
     else 
     { 
      bookImageHyperlink.ImageUrl = item.MediumImage.URL; 
     } 
     bookImageHyperlink.NavigateUrl = item.DetailPageURL; 
     bookTitleHyperlink.Text = item.ItemAttributes.Title; 
     bookTitleHyperlink.NavigateUrl = item.DetailPageURL; 
     if (item.OfferSummary.LowestNewPrice == null) 
     { 
      if (item.OfferSummary.LowestUsedPrice == null) 
      { 
       priceHyperlink.Visible = false; 
      } 
      else 
      { 
       priceHyperlink.Text = string.Format("Buy used {0}", item.OfferSummary.LowestUsedPrice.FormattedPrice); 
       priceHyperlink.NavigateUrl = item.DetailPageURL; 
      } 
     } 
     else 
     { 
      priceHyperlink.Text = string.Format("Buy new {0}", item.OfferSummary.LowestNewPrice.FormattedPrice); 
      priceHyperlink.NavigateUrl = item.DetailPageURL; 
     } 
     if (item.ItemAttributes.Author != null) 
     { 
      authorLabel.Text = string.Format("By {0}", string.Join(", ", item.ItemAttributes.Author)); 
     } 
     else 
     { 
      authorLabel.Text = string.Format("By {0}", string.Join(", ", item.ItemAttributes.Creator.Select(c => c.Value).ToArray())); 
     } 
     ItemLink link = item.ItemLinks.Where(i => i.Description.Contains("Wishlist")).FirstOrDefault(); 
     if (link == null) 
     { 
      wishListHyperlink.Visible = false; 
     } 
     else 
     { 
      wishListHyperlink.NavigateUrl = link.URL; 
     } 
    } 
} 
+0

Teşekkür ederim, ben önümüzdeki denemek zorunda kalacak şu anda çok yoğun bir hafta sonu, bu proje üzerinde çalışmaya. – Specto

+0

Serin. İyi şanslar! –

+1

Sadece bu kodu yazabilmek için teşekkür etmek istiyorum. bana saat kurtardın – deadlyvices

2

Eğer bir göz atmak isteyebilirsiniz CodePlex açık bir kaynak projesi It Amazon Web Hizmetleri için bir .NET Kütüphanesi var .... yoktur. (Codeplex üzerinde gösterildiği gibi) S3 OKS, FPS, EC2 ve DevPay

Bu bu kadar basit olabilir: Burada

S3Client s3 = new S3Client("myAWSKey", "MyAWSPassword"); 

bool success = s3.Connect(); 

S3Client s3 = new S3Client("key", "secret"): 
var buckets = from b in s3.Buckets 
          where b.Name == "demo" 
          select b; 
foreach(Bucket b in buckets) 
{ 
    Console.WriteLine(b.About()); 
} 
İlgili konular