|
Amazon Webservice from ASP.net by Charles Carroll
Here is our code to use an Amazon Web service from ASP.net.
Basically any WebService available has a SOAP interface that is a WSDL file. More details about the program reside @
http://www.amazon.com/gp/browse.html/ref=mm_ws_?node=3435361
filename=/experiments/amazonws/amazontest.aspx
<%@trace="true" debug="true" %>
<%@ Import Namespace="System.data"%>
<%@ Import Namespace="System.XML.Serialization"%>
<%@ Import Namespace="System.IO"%>
<%@ Import Namespace="LearnAsp"%>
<%@ Import Namespace="AmazonSearchService"%>
<%@ Assembly src="/experiments/utilitybelt/vercurrent/utilitybelt.vb" %>
<%@ Assembly src="amazonsearch.vb" %>
<script language="VB" runat="server">
dim utlty1 as new utilitybelt()
Sub Page_Load(S As Object, E As EventArgs)
utlty1.options("Debug-on,Xray-To-Page-On")
DIM strXML as string
TRY
DIM proxy AS new AmazonSearchService()
DIM reqamz1 as new AsinRequest()
' reqamz1.asin = "0672320681"
reqamz1.asin = "1861004516"
reqamz1.type = "lite"
reqAmz1.tag="learnasp"
' My Developer Token
reqamz1.devtag = "D1967KF255R5KZ"
DIM p1 as ProductInfo
p1=proxy.AsinSearchRequest(reqamz1)
trace.warn("type",typename(p1.Details.GetType()))
strXML=SerializeTypetoXML(p1.Details)
trace.write("AmazonResult",strXML)
DIM ds1 as new dataset
dim reader as StringReader= new StringReader(strXML)
ds1.ReadXml(reader)
utlty1.Xray(ds1,"Amazon Dataset")
CATCH ex1 as exception
Call utlty1.LogException("SUB Page_Load",ex1)
FINALLY
END TRY
End Sub
function SerializeTypeToXML(objparm as object) as string
' now we convert that type into XML
' http://aspalliance.com/shark/articles/amzws/amzdoc.aspx
DIM XmlSrlz1 as xmlSerializer
XmlSrlz1=new XmlSerializer(objParm.GetType())
DIM strwrtr1 as StringWriter = new StringWriter()
XmlSrlz1.Serialize(strwrtr1, objParm)
return(strwrtr1.ToString())
end function
</script>
<html><head>
<title>XML Demo</title>
</head>
<body bgcolor="#FFFFFF">
<form runat="server">
<ASP:placeholder id="plcErr" runat="server" />
See The Trace For More Details
<ASP:placeholder id="plcEndofPage" runat="server" />
</form>
</body></html>
The Amazon WSDL resides @
http://soap.amazon.com/schemas/AmazonWebServices.wsdl
The Amazon WSDL is easily turned into a VB or C# program that is a object that performs the WebService
wtih the WSDL utility from the SDK, i.e.
wsdl amazon.wsdl /out:amazon.vb /language:VB
or
wsdl amazon.wsdl /out:amazon.vb /language:CS
The file below was auto-generated by the WSDL Utility.
filename=/experiments/amazonws/AmazonSearch.vb
'------------------------------------------------------------------------------
' <autogenerated>
' This code was generated by a tool.
' Runtime Version: 1.0.3705.288
'
' Changes to this file may cause incorrect behavior and will be lost if
' the code is regenerated.
' </autogenerated>
'------------------------------------------------------------------------------
Option Strict Off
Option Explicit On
Imports System
Imports System.ComponentModel
Imports System.Diagnostics
Imports System.Web.Services
Imports System.Web.Services.Protocols
Imports System.Xml.Serialization
'
'This source code was auto-generated by wsdl, Version=1.0.3705.288.
'
'<remarks/>
<System.Diagnostics.DebuggerStepThroughAttribute(), _
System.ComponentModel.DesignerCategoryAttribute("code"), _
System.Web.Services.WebServiceBindingAttribute(Name:="AmazonSearchBinding", [Namespace]:="urn:PI/DevCentral/SoapService"), _
System.Xml.Serialization.SoapIncludeAttribute(GetType(CustomerReview)), _
System.Xml.Serialization.SoapIncludeAttribute(GetType(Track)), _
System.Xml.Serialization.SoapIncludeAttribute(GetType(BrowseNode)), _
System.Xml.Serialization.SoapIncludeAttribute(GetType(KeyPhrase)), _
System.Xml.Serialization.SoapIncludeAttribute(GetType(Details))> _
Public Class AmazonSearchService
Inherits System.Web.Services.Protocols.SoapHttpClientProtocol
'<remarks/>
Public Sub New()
MyBase.New
Me.Url = "http://soap.amazon.com/onca/soap"
End Sub
'<remarks/>
<System.Web.Services.Protocols.SoapRpcMethodAttribute("urn:PI/DevCentral/SoapService", RequestNamespace:="urn:PI/DevCentral/SoapService", ResponseNamespace:="urn:PI/DevCentral/SoapService")> _
Public Function KeywordSearchRequest(<System.Xml.Serialization.SoapElementAttribute("KeywordSearchRequest")> ByVal KeywordSearchRequest1 As KeywordRequest) As <System.Xml.Serialization.SoapElementAttribute("return")> ProductInfo
Dim results() As Object = Me.Invoke("KeywordSearchRequest", New Object() {KeywordSearchRequest1})
Return CType(results(0),ProductInfo)
End Function
'<remarks/>
Public Function BeginKeywordSearchRequest(ByVal KeywordSearchRequest1 As KeywordRequest, ByVal callback As System.AsyncCallback, ByVal asyncState As Object) As System.IAsyncResult
Return Me.BeginInvoke("KeywordSearchRequest", New Object() {KeywordSearchRequest1}, callback, asyncState)
End Function
'<remarks/>
Public Function EndKeywordSearchRequest(ByVal asyncResult As System.IAsyncResult) As ProductInfo
Dim results() As Object = Me.EndInvoke(asyncResult)
Return CType(results(0),ProductInfo)
End Function
'<remarks/>
<System.Web.Services.Protocols.SoapRpcMethodAttribute("urn:PI/DevCentral/SoapService", RequestNamespace:="urn:PI/DevCentral/SoapService", ResponseNamespace:="urn:PI/DevCentral/SoapService")> _
Public Function BrowseNodeSearchRequest(<System.Xml.Serialization.SoapElementAttribute("BrowseNodeSearchRequest")> ByVal BrowseNodeSearchRequest1 As BrowseNodeRequest) As <System.Xml.Serialization.SoapElementAttribute("return")> ProductInfo
Dim results() As Object = Me.Invoke("BrowseNodeSearchRequest", New Object() {BrowseNodeSearchRequest1})
Return CType(results(0),ProductInfo)
End Function
'<remarks/>
Public Function BeginBrowseNodeSearchRequest(ByVal BrowseNodeSearchRequest1 As BrowseNodeRequest, ByVal callback As System.AsyncCallback, ByVal asyncState As Object) As System.IAsyncResult
Return Me.BeginInvoke("BrowseNodeSearchRequest", New Object() {BrowseNodeSearchRequest1}, callback, asyncState)
End Function
'<remarks/>
Public Function EndBrowseNodeSearchRequest(ByVal asyncResult As System.IAsyncResult) As ProductInfo
Dim results() As Object = Me.EndInvoke(asyncResult)
Return CType(results(0),ProductInfo)
End Function
'<remarks/>
<System.Web.Services.Protocols.SoapRpcMethodAttribute("urn:PI/DevCentral/SoapService", RequestNamespace:="urn:PI/DevCentral/SoapService", ResponseNamespace:="urn:PI/DevCentral/SoapService")> _
Public Function AsinSearchRequest(<System.Xml.Serialization.SoapElementAttribute("AsinSearchRequest")> ByVal AsinSearchRequest1 As AsinRequest) As <System.Xml.Serialization.SoapElementAttribute("return")> ProductInfo
Dim results() As Object = Me.Invoke("AsinSearchRequest", New Object() {AsinSearchRequest1})
Return CType(results(0),ProductInfo)
End Function
'<remarks/>
Public Function BeginAsinSearchRequest(ByVal AsinSearchRequest1 As AsinRequest, ByVal callback As System.AsyncCallback, ByVal asyncState As Object) As System.IAsyncResult
Return Me.BeginInvoke("AsinSearchRequest", New Object() {AsinSearchRequest1}, callback, asyncState)
End Function
'<remarks/>
Public Function EndAsinSearchRequest(ByVal asyncResult As System.IAsyncResult) As ProductInfo
Dim results() As Object = Me.EndInvoke(asyncResult)
Return CType(results(0),ProductInfo)
End Function
'<remarks/>
<System.Web.Services.Protocols.SoapRpcMethodAttribute("urn:PI/DevCentral/SoapService", RequestNamespace:="urn:PI/DevCentral/SoapService", ResponseNamespace:="urn:PI/DevCentral/SoapService")> _
Public Function UpcSearchRequest(<System.Xml.Serialization.SoapElementAttribute("UpcSearchRequest")> ByVal UpcSearchRequest1 As UpcRequest) As <System.Xml.Serialization.SoapElementAttribute("return")> ProductInfo
Dim results() As Object = Me.Invoke("UpcSearchRequest", New Object() {UpcSearchRequest1})
Return CType(results(0),ProductInfo)
End Function
'<remarks/>
Public Function BeginUpcSearchRequest(ByVal UpcSearchRequest1 As UpcRequest, ByVal callback As System.AsyncCallback, ByVal asyncState As Object) As System.IAsyncResult
Return Me.BeginInvoke("UpcSearchRequest", New Object() {UpcSearchRequest1}, callback, asyncState)
End Function
'<remarks/>
Public Function EndUpcSearchRequest(ByVal asyncResult As System.IAsyncResult) As ProductInfo
Dim results() As Object = Me.EndInvoke(asyncResult)
Return CType(results(0),ProductInfo)
End Function
'<remarks/>
<System.Web.Services.Protocols.SoapRpcMethodAttribute("urn:PI/DevCentral/SoapService", RequestNamespace:="urn:PI/DevCentral/SoapService", ResponseNamespace:="urn:PI/DevCentral/SoapService")> _
Public Function AuthorSearchRequest(<System.Xml.Serialization.SoapElementAttribute("AuthorSearchRequest")> ByVal AuthorSearchRequest1 As AuthorRequest) As <System.Xml.Serialization.SoapElementAttribute("return")> ProductInfo
Dim results() As Object = Me.Invoke("AuthorSearchRequest", New Object() {AuthorSearchRequest1})
Return CType(results(0),ProductInfo)
End Function
'<remarks/>
Public Function BeginAuthorSearchRequest(ByVal AuthorSearchRequest1 As AuthorRequest, ByVal callback As System.AsyncCallback, ByVal asyncState As Object) As System.IAsyncResult
Return Me.BeginInvoke("AuthorSearchRequest", New Object() {AuthorSearchRequest1}, callback, asyncState)
End Function
'<remarks/>
Public Function EndAuthorSearchRequest(ByVal asyncResult As System.IAsyncResult) As ProductInfo
Dim results() As Object = Me.EndInvoke(asyncResult)
Return CType(results(0),ProductInfo)
End Function
'<remarks/>
<System.Web.Services.Protocols.SoapRpcMethodAttribute("urn:PI/DevCentral/SoapService", RequestNamespace:="urn:PI/DevCentral/SoapService", ResponseNamespace:="urn:PI/DevCentral/SoapService")> _
Public Function ArtistSearchRequest(<System.Xml.Serialization.SoapElementAttribute("ArtistSearchRequest")> ByVal ArtistSearchRequest1 As ArtistRequest) As <System.Xml.Serialization.SoapElementAttribute("return")> ProductInfo
Dim results() As Object = Me.Invoke("ArtistSearchRequest", New Object() {ArtistSearchRequest1})
Return CType(results(0),ProductInfo)
End Function
'<remarks/>
Public Function BeginArtistSearchRequest(ByVal ArtistSearchRequest1 As ArtistRequest, ByVal callback As System.AsyncCallback, ByVal asyncState As Object) As System.IAsyncResult
Return Me.BeginInvoke("ArtistSearchRequest", New Object() {ArtistSearchRequest1}, callback, asyncState)
End Function
'<remarks/>
Public Function EndArtistSearchRequest(ByVal asyncResult As System.IAsyncResult) As ProductInfo
Dim results() As Object = Me.EndInvoke(asyncResult)
Return CType(results(0),ProductInfo)
End Function
'<remarks/>
<System.Web.Services.Protocols.SoapRpcMethodAttribute("urn:PI/DevCentral/SoapService", RequestNamespace:="urn:PI/DevCentral/SoapService", ResponseNamespace:="urn:PI/DevCentral/SoapService")> _
Public Function ActorSearchRequest(<System.Xml.Serialization.SoapElementAttribute("ActorSearchRequest")> ByVal ActorSearchRequest1 As ActorRequest) As <System.Xml.Serialization.SoapElementAttribute("return")> ProductInfo
Dim results() As Object = Me.Invoke("ActorSearchRequest", New Object() {ActorSearchRequest1})
Return CType(results(0),ProductInfo)
End Function
'<remarks/>
Public Function BeginActorSearchRequest(ByVal ActorSearchRequest1 As ActorRequest, ByVal callback As System.AsyncCallback, ByVal asyncState As Object) As System.IAsyncResult
Return Me.BeginInvoke("ActorSearchRequest", New Object() {ActorSearchRequest1}, callback, asyncState)
End Function
'<remarks/>
Public Function EndActorSearchRequest(ByVal asyncResult As System.IAsyncResult) As ProductInfo
Dim results() As Object = Me.EndInvoke(asyncResult)
Return CType(results(0),ProductInfo)
End Function
'<remarks/>
<System.Web.Services.Protocols.SoapRpcMethodAttribute("urn:PI/DevCentral/SoapService", RequestNamespace:="urn:PI/DevCentral/SoapService", ResponseNamespace:="urn:PI/DevCentral/SoapService")> _
Public Function ManufacturerSearchRequest(<System.Xml.Serialization.SoapElementAttribute("ManufacturerSearchRequest")> ByVal ManufacturerSearchRequest1 As ManufacturerRequest) As <System.Xml.Serialization.SoapElementAttribute("return")> ProductInfo
Dim results() As Object = Me.Invoke("ManufacturerSearchRequest", New Object() {ManufacturerSearchRequest1})
Return CType(results(0),ProductInfo)
End Function
'<remarks/>
Public Function BeginManufacturerSearchRequest(ByVal ManufacturerSearchRequest1 As ManufacturerRequest, ByVal callback As System.AsyncCallback, ByVal asyncState As Object) As System.IAsyncResult
Return Me.BeginInvoke("ManufacturerSearchRequest", New Object() {ManufacturerSearchRequest1}, callback, asyncState)
End Function
'<remarks/>
Public Function EndManufacturerSearchRequest(ByVal asyncResult As System.IAsyncResult) As ProductInfo
Dim results() As Object = Me.EndInvoke(asyncResult)
Return CType(results(0),ProductInfo)
End Function
'<remarks/>
<System.Web.Services.Protocols.SoapRpcMethodAttribute("urn:PI/DevCentral/SoapService", RequestNamespace:="urn:PI/DevCentral/SoapService", ResponseNamespace:="urn:PI/DevCentral/SoapService")> _
Public Function DirectorSearchRequest(<System.Xml.Serialization.SoapElementAttribute("DirectorSearchRequest")> ByVal DirectorSearchRequest1 As DirectorRequest) As <System.Xml.Serialization.SoapElementAttribute("return")> ProductInfo
Dim results() As Object = Me.Invoke("DirectorSearchRequest", New Object() {DirectorSearchRequest1})
Return CType(results(0),ProductInfo)
End Function
'<remarks/>
Public Function BeginDirectorSearchRequest(ByVal DirectorSearchRequest1 As DirectorRequest, ByVal callback As System.AsyncCallback, ByVal asyncState As Object) As System.IAsyncResult
Return Me.BeginInvoke("DirectorSearchRequest", New Object() {DirectorSearchRequest1}, callback, asyncState)
End Function
'<remarks/>
Public Function EndDirectorSearchRequest(ByVal asyncResult As System.IAsyncResult) As ProductInfo
Dim results() As Object = Me.EndInvoke(asyncResult)
Return CType(results(0),ProductInfo)
End Function
'<remarks/>
<System.Web.Services.Protocols.SoapRpcMethodAttribute("urn:PI/DevCentral/SoapService", RequestNamespace:="urn:PI/DevCentral/SoapService", ResponseNamespace:="urn:PI/DevCentral/SoapService")> _
Public Function ListManiaSearchRequest(<System.Xml.Serialization.SoapElementAttribute("ListManiaSearchRequest")> ByVal ListManiaSearchRequest1 As ListManiaRequest) As <System.Xml.Serialization.SoapElementAttribute("return")> ProductInfo
Dim results() As Object = Me.Invoke("ListManiaSearchRequest", New Object() {ListManiaSearchRequest1})
Return CType(results(0),ProductInfo)
End Function
'<remarks/>
Public Function BeginListManiaSearchRequest(ByVal ListManiaSearchRequest1 As ListManiaRequest, ByVal callback As System.AsyncCallback, ByVal asyncState As Object) As System.IAsyncResult
Return Me.BeginInvoke("ListManiaSearchRequest", New Object() {ListManiaSearchRequest1}, callback, asyncState)
End Function
'<remarks/>
Public Function EndListManiaSearchRequest(ByVal asyncResult As System.IAsyncResult) As ProductInfo
Dim results() As Object = Me.EndInvoke(asyncResult)
Return CType(results(0),ProductInfo)
End Function
'<remarks/>
<System.Web.Services.Protocols.SoapRpcMethodAttribute("urn:PI/DevCentral/SoapService", RequestNamespace:="urn:PI/DevCentral/SoapService", ResponseNamespace:="urn:PI/DevCentral/SoapService")> _
Public Function SimilaritySearchRequest(<System.Xml.Serialization.SoapElementAttribute("SimilaritySearchRequest")> ByVal SimilaritySearchRequest1 As SimilarityRequest) As <System.Xml.Serialization.SoapElementAttribute("return")> ProductInfo
Dim results() As Object = Me.Invoke("SimilaritySearchRequest", New Object() {SimilaritySearchRequest1})
Return CType(results(0),ProductInfo)
End Function
'<remarks/>
Public Function BeginSimilaritySearchRequest(ByVal SimilaritySearchRequest1 As SimilarityRequest, ByVal callback As System.AsyncCallback, ByVal asyncState As Object) As System.IAsyncResult
Return Me.BeginInvoke("SimilaritySearchRequest", New Object() {SimilaritySearchRequest1}, callback, asyncState)
End Function
'<remarks/>
Public Function EndSimilaritySearchRequest(ByVal asyncResult As System.IAsyncResult) As ProductInfo
Dim results() As Object = Me.EndInvoke(asyncResult)
Return CType(results(0),ProductInfo)
End Function
End Class
'<remarks/>
<System.Xml.Serialization.SoapTypeAttribute("KeywordRequest", "urn:PI/DevCentral/SoapService")> _
Public Class KeywordRequest
'<remarks/>
Public keyword As String
'<remarks/>
Public page As String
'<remarks/>
Public mode As String
'<remarks/>
Public tag As String
'<remarks/>
Public type As String
'<remarks/>
Public devtag As String
'<remarks/>
Public version As String
End Class
'<remarks/>
<System.Xml.Serialization.SoapTypeAttribute("SimilarityRequest", "urn:PI/DevCentral/SoapService")> _
Public Class SimilarityRequest
'<remarks/>
Public asin As String
'<remarks/>
Public mode As String
'<remarks/>
Public tag As String
'<remarks/>
Public type As String
'<remarks/>
Public devtag As String
'<remarks/>
Public version As String
End Class
'<remarks/>
<System.Xml.Serialization.SoapTypeAttribute("ListManiaRequest", "urn:PI/DevCentral/SoapService")> _
Public Class ListManiaRequest
'<remarks/>
Public lm_id As String
'<remarks/>
Public page As String
'<remarks/>
Public mode As String
'<remarks/>
Public tag As String
'<remarks/>
Public type As String
'<remarks/>
Public devtag As String
'<remarks/>
Public version As String
End Class
'<remarks/>
<System.Xml.Serialization.SoapTypeAttribute("DirectorRequest", "urn:PI/DevCentral/SoapService")> _
Public Class DirectorRequest
'<remarks/>
Public director As String
'<remarks/>
Public page As String
'<remarks/>
Public mode As String
'<remarks/>
Public tag As String
'<remarks/>
Public type As String
'<remarks/>
Public devtag As String
'<remarks/>
Public version As String
End Class
'<remarks/>
<System.Xml.Serialization.SoapTypeAttribute("ManufacturerRequest", "urn:PI/DevCentral/SoapService")> _
Public Class ManufacturerRequest
'<remarks/>
Public manufacturer As String
'<remarks/>
Public page As String
'<remarks/>
Public mode As String
'<remarks/>
Public tag As String
'<remarks/>
Public type As String
'<remarks/>
Public devtag As String
'<remarks/>
Public version As String
End Class
'<remarks/>
<System.Xml.Serialization.SoapTypeAttribute("ActorRequest", "urn:PI/DevCentral/SoapService")> _
Public Class ActorRequest
'<remarks/>
Public actor As String
'<remarks/>
Public page As String
'<remarks/>
Public mode As String
'<remarks/>
Public tag As String
'<remarks/>
Public type As String
'<remarks/>
Public devtag As String
'<remarks/>
Public version As String
End Class
'<remarks/>
<System.Xml.Serialization.SoapTypeAttribute("ArtistRequest", "urn:PI/DevCentral/SoapService")> _
Public Class ArtistRequest
'<remarks/>
Public artist As String
'<remarks/>
Public page As String
'<remarks/>
Public mode As String
'<remarks/>
Public tag As String
'<remarks/>
Public type As String
'<remarks/>
Public devtag As String
'<remarks/>
Public version As String
End Class
'<remarks/>
<System.Xml.Serialization.SoapTypeAttribute("AuthorRequest", "urn:PI/DevCentral/SoapService")> _
Public Class AuthorRequest
'<remarks/>
Public author As String
'<remarks/>
Public page As String
'<remarks/>
Public mode As String
'<remarks/>
Public tag As String
'<remarks/>
Public type As String
'<remarks/>
Public devtag As String
'<remarks/>
Public version As String
End Class
'<remarks/>
<System.Xml.Serialization.SoapTypeAttribute("UpcRequest", "urn:PI/DevCentral/SoapService")> _
Public Class UpcRequest
'<remarks/>
Public upc As String
'<remarks/>
Public mode As String
'<remarks/>
Public tag As String
'<remarks/>
Public type As String
'<remarks/>
Public devtag As String
'<remarks/>
Public version As String
End Class
'<remarks/>
<System.Xml.Serialization.SoapTypeAttribute("AsinRequest", "urn:PI/DevCentral/SoapService")> _
Public Class AsinRequest
'<remarks/>
Public asin As String
'<remarks/>
Public tag As String
'<remarks/>
Public type As String
'<remarks/>
Public devtag As String
'<remarks/>
Public version As String
End Class
'<remarks/>
<System.Xml.Serialization.SoapTypeAttribute("BrowseNodeRequest", "urn:PI/DevCentral/SoapService")> _
Public Class BrowseNodeRequest
'<remarks/>
Public browse_node As String
'<remarks/>
Public page As String
'<remarks/>
Public mode As String
'<remarks/>
Public tag As String
'<remarks/>
Public type As String
'<remarks/>
Public devtag As String
'<remarks/>
Public version As String
End Class
'<remarks/>
<System.Xml.Serialization.SoapTypeAttribute("CustomerReview", "urn:PI/DevCentral/SoapService")> _
Public Class CustomerReview
'<remarks/>
Public Rating As String
'<remarks/>
Public Summary As String
'<remarks/>
Public Comment As String
End Class
'<remarks/>
<System.Xml.Serialization.SoapTypeAttribute("Reviews", "urn:PI/DevCentral/SoapService")> _
Public Class Reviews
'<remarks/>
Public AvgCustomerRating As String
'<remarks/>
Public CustomerReviews() As CustomerReview
End Class
'<remarks/>
<System.Xml.Serialization.SoapTypeAttribute("Track", "urn:PI/DevCentral/SoapService")> _
Public Class Track
'<remarks/>
Public TrackName As String
'<remarks/>
Public ByArtist As String
End Class
'<remarks/>
<System.Xml.Serialization.SoapTypeAttribute("BrowseNode", "urn:PI/DevCentral/SoapService")> _
Public Class BrowseNode
'<remarks/>
Public BrowseId As String
'<remarks/>
Public BrowseName As String
End Class
'<remarks/>
<System.Xml.Serialization.SoapTypeAttribute("KeyPhrase", "urn:PI/DevCentral/SoapService")> _
Public Class KeyPhrase
'<remarks/>
<System.Xml.Serialization.SoapElementAttribute("KeyPhrase")> _
Public KeyPhrase1 As String
'<remarks/>
Public Type As String
End Class
'<remarks/>
<System.Xml.Serialization.SoapTypeAttribute("Details", "urn:PI/DevCentral/SoapService")> _
Public Class Details
'<remarks/>
Public Url As String
'<remarks/>
Public Asin As String
'<remarks/>
Public ProductName As String
'<remarks/>
Public Catalog As String
'<remarks/>
Public KeyPhrases() As KeyPhrase
'<remarks/>
Public Artists() As String
'<remarks/>
Public Authors() As String
'<remarks/>
Public Mpn As String
'<remarks/>
Public Starring() As String
'<remarks/>
Public Directors() As String
'<remarks/>
Public TheatricalReleaseDate As String
'<remarks/>
Public ReleaseDate As String
'<remarks/>
Public Manufacturer As String
'<remarks/>
Public Distributor As String
'<remarks/>
Public ImageUrlSmall As String
'<remarks/>
Public ImageUrlMedium As String
'<remarks/>
Public ImageUrlLarge As String
'<remarks/>
Public ListPrice As String
'<remarks/>
Public OurPrice As String
'<remarks/>
Public UsedPrice As String
'<remarks/>
Public RefurbishedPrice As String
'<remarks/>
Public CollectiblePrice As String
'<remarks/>
Public ThirdPartyNewPrice As String
'<remarks/>
Public SalesRank As String
'<remarks/>
Public BrowseList() As BrowseNode
'<remarks/>
Public Media As String
'<remarks/>
Public ReadingLevel As String
'<remarks/>
Public Publisher As String
'<remarks/>
Public NumMedia As String
'<remarks/>
Public Isbn As String
'<remarks/>
Public Features() As String
'<remarks/>
Public MpaaRating As String
'<remarks/>
Public EsrbRating As String
'<remarks/>
Public AgeGroup As String
'<remarks/>
Public Availability As String
'<remarks/>
Public Upc As String
'<remarks/>
Public Tracks() As Track
'<remarks/>
Public Accessories() As String
'<remarks/>
Public Platforms() As String
'<remarks/>
Public Encoding As String
'<remarks/>
Public Reviews As Reviews
'<remarks/>
Public SimilarProducts() As String
'<remarks/>
Public Lists() As String
End Class
'<remarks/>
<System.Xml.Serialization.SoapTypeAttribute("ProductInfo", "urn:PI/DevCentral/SoapService")> _
Public Class ProductInfo
'<remarks/>
Public Details() As Details
End Class
filename=/experiments/yahoostores/yahoostoreviewerweb.aspx
<%@ debug="true"%>
<%@ Import Namespace="System.Net" %>
<%@ Import Namespace="System.IO" %>
<%@ Import Namespace="System.Data" %>
<script language="VB" runat="server">
SUB Page_Load(Src As Object, E As EventArgs)
If ispostback=false THEN
storeURL.text="http://store.yahoo.com/yhst-1443191082283/objinfo.xml"
ELSE
Dim ds As New DataSet
dim tablecount as integer
dim tablecurrent as integer
DIM datafromURL as streamreader
datafromURL=readURLstream(storeURL.text)
ds.ReadXml(datafromURL)
dim counter as integer
tablecount=ds.tables.count()
'response.write ("tablecount=" & tablecount & "<br>")
TRY
tablecurrent=cint(whichdataview.selecteditem.text())
CATCH
tablecurrent=0
END TRY
whichdataview.items.clear()
FOR counter=0 TO tablecount-1
whichdataview.items.add (counter)
NEXT
whichdataview.SelectedIndex = whichdataview.Items.IndexOf(whichdataview.Items.FindByValue("8"))
tablecurrent=7
MyDataGrid.DataSource = new DataView(ds.Tables(tablecurrent))
MyDataGrid.DataBind()
datafromURL.close
END IF
END SUB
Function readURLstream(url As String) As StreamReader
Dim objResponse As WebResponse
Dim objRequest As WebRequest
Dim result As String
objRequest = System.Net.HttpWebRequest.Create(url)
objResponse = objRequest.GetResponse()
Dim sr As New StreamReader(objResponse.GetResponseStream())
return sr
End Function
</script>
<html>
<body>
<h3>XML File Viewer</h3>
<form runat="server" >
<b>URL to Store:</b> <asp:textbox id="storeURL" columns="60" runat="server" /><br>
<asp:dropdownlist id="whichdataview" autopostback="true" EnableViewState="true" runat="server"/>
<asp:Button text="Load XML File" runat="server" />
<br>
<asp:literal id="testoutput" runat="server"/><br>
<ASP:DataGrid id="MyDataGrid" runat="server"
BackColor="white"
BorderColor="black"
ShowFooter="false"
CellPadding=3
CellSpacing="0"
Font-Name="Verdana"
Font-Size="8pt"
Headerstyle-BackColor="lightblue"
Headerstyle-Font-Size="10pt"
Headerstyle-Font-Style="bold"
/>
</form>
</body>
</html>
|