<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" href="http://forums.asp.net/utility/FeedStylesheets/rss.xsl" media="screen"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:wfw="http://wellformedweb.org/CommentAPI/"><channel><title>Getting Started</title><link>http://forums.asp.net/15.aspx</link><description>The perfect forum for ASP.NET novices. No question too simple! &lt;A href="http://aspadvice.com/SignUp/list.aspx?l=21&amp;amp;c=17" target=_blank&gt;Email List&lt;/A&gt;</description><dc:language>en</dc:language><generator>CommunityServer 2007 SP1 (Build: 20510.895)</generator><item><title>Sv: Re: Sv: Re: Generic List get converted into an Array when sent through Web Service?</title><link>http://forums.asp.net/thread/1056109.aspx</link><pubDate>Mon, 19 Sep 2005 09:50:54 GMT</pubDate><guid isPermaLink="false">4c671506-2930-414c-a40b-8bf57ded5924:1056109</guid><dc:creator>badbanana</dc:creator><author>badbanana</author><slash:comments>0</slash:comments><comments>http://forums.asp.net/thread/1056109.aspx</comments><wfw:commentRss>http://forums.asp.net/commentrss.aspx?SectionID=15&amp;PostID=1056109</wfw:commentRss><description>Cool &lt;img src="/emoticons/emotion-11.gif" alt="Cool [H]" /&gt;</description></item><item><title>Re: Sv: Re: Generic List get converted into an Array when sent through Web Service?</title><link>http://forums.asp.net/thread/1055940.aspx</link><pubDate>Mon, 19 Sep 2005 04:42:14 GMT</pubDate><guid isPermaLink="false">4c671506-2930-414c-a40b-8bf57ded5924:1055940</guid><dc:creator>JDHill</dc:creator><author>JDHill</author><slash:comments>0</slash:comments><comments>http://forums.asp.net/thread/1055940.aspx</comments><wfw:commentRss>http://forums.asp.net/commentrss.aspx?SectionID=15&amp;PostID=1055940</wfw:commentRss><description>Here you go:&lt;BR&gt;&lt;BR&gt;What we're doing is using a BinaryFormatter to put the CustomerList in a temp file through a FileStream.&amp;nbsp; Then we're reading the bytes out of that file&amp;nbsp;into a Byte Array and pushing them over the wire.&amp;nbsp; On the other end, we read them into a file, and then read that file into a FileStream for the BinaryFormatter to Deserialize.&lt;BR&gt;&lt;BR&gt;The transmission is done in base64binary, which, while being&amp;nbsp;a text-representation,&amp;nbsp;is not messed up by the&amp;nbsp;xml UTF-8&amp;nbsp;encoding.&amp;nbsp; I don't work with Streams too much, and I didn't have the time to figure out how to get rid of the intermediate files by using another type of Stream.&lt;BR&gt;&lt;BR&gt;&lt;FONT color=#808080&gt;&lt;EM&gt;&lt;FONT size=2&gt;(I'm a VB.Net guy, so you'll have to translate for yourself)&lt;/FONT&gt;&lt;/EM&gt;&lt;BR&gt;&lt;/FONT&gt;&lt;BR&gt;&lt;BR&gt;&lt;FONT size=4&gt;&lt;STRONG&gt;service.asmx&lt;/STRONG&gt;&lt;CODE&gt;&lt;/FONT&gt;&lt;BR&gt;&lt;BR&gt;&lt;BR&gt;&lt;FONT color=#0000ff size=1&gt;
&lt;P&gt;&lt;FONT size=2&gt;Imports&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt; System.Web&lt;/FONT&gt;&lt;/P&gt;&lt;FONT color=#0000ff&gt;
&lt;P&gt;&lt;FONT size=2&gt;Imports&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt; System.Web.Services&lt;/FONT&gt;&lt;/P&gt;&lt;FONT color=#0000ff&gt;
&lt;P&gt;&lt;FONT size=2&gt;Imports&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt; System.Web.Services.Protocols&lt;/FONT&gt;&lt;/P&gt;&lt;FONT color=#0000ff&gt;
&lt;P&gt;&lt;FONT size=2&gt;Imports&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt; System.IO&lt;/FONT&gt;&lt;/P&gt;&lt;FONT color=#0000ff&gt;
&lt;P&gt;&lt;FONT size=2&gt;Imports&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt; System.Runtime.Serialization&lt;/FONT&gt;&lt;/P&gt;&lt;FONT color=#0000ff&gt;
&lt;P&gt;&lt;FONT size=2&gt;Imports&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt; System.Runtime.Serialization.Formatters.Binary&lt;/FONT&gt;&lt;/P&gt;&lt;FONT color=#0000ff&gt;
&lt;P&gt;&lt;FONT size=2&gt;&lt;/FONT&gt;&lt;/FONT&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&lt;FONT size=2&gt;&amp;lt;WebService(Namespace := "http://tempuri.org/")&amp;gt; _&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT size=2&gt;&amp;lt;WebServiceBinding(ConformsTo:=WsiProfiles.BasicProfile1_1)&amp;gt; _&lt;/FONT&gt;&lt;/P&gt;&lt;FONT color=#0000ff&gt;
&lt;P&gt;&lt;FONT size=2&gt;Public&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt; &lt;FONT color=#0000ff&gt;Class&lt;/FONT&gt; Service&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT size=2&gt;&lt;FONT color=#0000ff&gt;Inherits&lt;/FONT&gt; System.Web.Services.WebService&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT size=2&gt;&lt;FONT color=#0000ff&gt;Public&lt;/FONT&gt; &lt;FONT color=#0000ff&gt;Sub&lt;/FONT&gt; Service&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT size=2&gt;&lt;FONT color=#0000ff&gt;End&lt;/FONT&gt; &lt;FONT color=#0000ff&gt;Sub&lt;/P&gt;&lt;/FONT&gt;&lt;/FONT&gt;
&lt;P&gt;&lt;FONT size=2&gt;&lt;FONT color=#0000ff&gt;Private&lt;/FONT&gt; cl &lt;FONT color=#0000ff&gt;As&lt;/FONT&gt; &lt;FONT color=#0000ff&gt;New&lt;/FONT&gt; CustomerList&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT size=2&gt;&amp;lt;WebMethod()&amp;gt; _&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT size=2&gt;&lt;FONT color=#0000ff&gt;Public&lt;/FONT&gt; &lt;FONT color=#0000ff&gt;Function&lt;/FONT&gt; GetCustomerList() &lt;FONT color=#0000ff&gt;As&lt;/FONT&gt; &lt;FONT color=#0000ff&gt;Byte&lt;/FONT&gt;()&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT size=2&gt;&lt;FONT color=#0000ff&gt;Dim&lt;/FONT&gt; c &lt;FONT color=#0000ff&gt;As&lt;/FONT&gt; &lt;FONT color=#0000ff&gt;New&lt;/FONT&gt; Customer&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT size=2&gt;c.CustomerName = "Customer1"&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT size=2&gt;cl.Add(c)&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT size=2&gt;&lt;FONT color=#0000ff&gt;Dim&lt;/FONT&gt; c2 &lt;FONT color=#0000ff&gt;As&lt;/FONT&gt; &lt;FONT color=#0000ff&gt;New&lt;/FONT&gt; Customer&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT size=2&gt;c2.CustomerName = "Customer2"&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT size=2&gt;cl.Add(c2)&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT size=2&gt;&lt;FONT color=#0000ff&gt;Dim&lt;/FONT&gt; c3 &lt;FONT color=#0000ff&gt;As&lt;/FONT&gt; &lt;FONT color=#0000ff&gt;New&lt;/FONT&gt; Customer&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT size=2&gt;c3.CustomerName = "Customer3"&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT size=2&gt;cl.Add(c3)&lt;BR&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT color=#0000ff&gt;&lt;BR&gt;&lt;BR&gt;&lt;FONT size=2&gt;Dim&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt; s &lt;FONT color=#0000ff&gt;As&lt;/FONT&gt; &lt;FONT color=#0000ff&gt;New&lt;/FONT&gt; FileStream(Server.MapPath("temp.str"), FileMode.Create)&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT size=2&gt;&lt;FONT color=#0000ff&gt;Dim&lt;/FONT&gt; b &lt;FONT color=#0000ff&gt;As&lt;/FONT&gt; &lt;FONT color=#0000ff&gt;New&lt;/FONT&gt; BinaryFormatter&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT size=2&gt;b.Serialize(s, cl)&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT size=2&gt;s.Close()&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT size=2&gt;&lt;FONT color=#0000ff&gt;Dim&lt;/FONT&gt; bstr &lt;FONT color=#0000ff&gt;As&lt;/FONT&gt; &lt;FONT color=#0000ff&gt;Byte&lt;/FONT&gt;() = (File.ReadAllBytes(Server.MapPath("temp.str")))&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT size=2&gt;File.Delete(Server.MapPath("temp.str"))&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT size=2&gt;&lt;FONT color=#0000ff&gt;Return&lt;/FONT&gt; bstr&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT size=2&gt;&lt;FONT color=#0000ff&gt;End&lt;/FONT&gt; &lt;/FONT&gt;&lt;FONT color=#0000ff&gt;&lt;FONT size=2&gt;Function&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT size=2&gt;End&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt; &lt;/FONT&gt;&lt;FONT color=#0000ff&gt;&lt;FONT size=2&gt;Class&lt;BR&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;/FONT&gt;
&lt;P&gt;&lt;BR&gt;&lt;BR&gt;&lt;FONT size=2&gt;&amp;lt;Serializable()&amp;gt; _&lt;/FONT&gt;&lt;/P&gt;&lt;FONT color=#0000ff&gt;
&lt;P&gt;&lt;FONT size=2&gt;Public&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt; &lt;FONT color=#0000ff&gt;Class&lt;/FONT&gt; Customer&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT size=2&gt;&lt;FONT color=#0000ff&gt;Private&lt;/FONT&gt; cn &lt;FONT color=#0000ff&gt;As&lt;/FONT&gt; &lt;FONT color=#0000ff&gt;String&lt;/P&gt;&lt;/FONT&gt;&lt;/FONT&gt;
&lt;P&gt;&lt;FONT size=2&gt;&lt;FONT color=#0000ff&gt;Public&lt;/FONT&gt; &lt;FONT color=#0000ff&gt;Property&lt;/FONT&gt; CustomerName() &lt;FONT color=#0000ff&gt;As&lt;/FONT&gt; &lt;FONT color=#0000ff&gt;String&lt;/P&gt;&lt;/FONT&gt;&lt;/FONT&gt;
&lt;P&gt;&lt;FONT color=#0000ff&gt;&lt;FONT size=2&gt;Get&lt;/FONT&gt;&lt;/P&gt;&lt;/FONT&gt;
&lt;P&gt;&lt;FONT size=2&gt;&lt;FONT color=#0000ff&gt;Return&lt;/FONT&gt; cn&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT size=2&gt;&lt;FONT color=#0000ff&gt;End&lt;/FONT&gt; &lt;FONT color=#0000ff&gt;Get&lt;/P&gt;&lt;/FONT&gt;&lt;/FONT&gt;
&lt;P&gt;&lt;FONT size=2&gt;&lt;FONT color=#0000ff&gt;Set&lt;/FONT&gt;(&lt;FONT color=#0000ff&gt;ByVal&lt;/FONT&gt; value &lt;FONT color=#0000ff&gt;As&lt;/FONT&gt; &lt;FONT color=#0000ff&gt;String&lt;/FONT&gt;)&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT size=2&gt;cn = value&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT size=2&gt;&lt;FONT color=#0000ff&gt;End&lt;/FONT&gt; &lt;FONT color=#0000ff&gt;Set&lt;/P&gt;&lt;/FONT&gt;&lt;/FONT&gt;
&lt;P&gt;&lt;FONT size=2&gt;&lt;FONT color=#0000ff&gt;End&lt;/FONT&gt; &lt;/FONT&gt;&lt;FONT color=#0000ff&gt;&lt;FONT size=2&gt;Property&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT size=2&gt;End&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt; &lt;/FONT&gt;&lt;FONT color=#0000ff&gt;&lt;FONT size=2&gt;Class&lt;BR&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;/FONT&gt;
&lt;P&gt;&lt;BR&gt;&lt;BR&gt;&lt;FONT size=2&gt;&amp;lt;Serializable()&amp;gt; _&lt;/FONT&gt;&lt;/P&gt;&lt;FONT color=#0000ff&gt;
&lt;P&gt;&lt;FONT size=2&gt;Public&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt; &lt;FONT color=#0000ff&gt;Class&lt;/FONT&gt; CustomerList&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT size=2&gt;&lt;FONT color=#0000ff&gt;Inherits&lt;/FONT&gt; System.Collections.Generic.List(&lt;FONT color=#0000ff&gt;Of&lt;/FONT&gt; Customer)&lt;/FONT&gt;&lt;/P&gt;&lt;FONT color=#0000ff&gt;
&lt;P&gt;&lt;FONT size=2&gt;End&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt; &lt;FONT color=#0000ff size=1&gt;&lt;FONT size=2&gt;Class&lt;/FONT&gt;&lt;/CODE&gt;&lt;/P&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;BR&gt;&lt;BR&gt;&lt;BR&gt;&lt;BR&gt;&lt;BR&gt;&lt;FONT color=#808080 size=4&gt;&lt;STRONG&gt;&lt;EM&gt;How the transmission looks at this point is:&lt;/EM&gt;&lt;/STRONG&gt;&lt;/FONT&gt;&lt;CODE&gt;&lt;BR&gt;&lt;BR&gt;
&lt;DIV class=e&gt;&lt;FONT color=#0000ff&gt;&lt;SPAN class=m&gt;&amp;lt;?&lt;/SPAN&gt;&lt;SPAN class=pi&gt;xml version="1.0" encoding="utf-8" &lt;/SPAN&gt;&lt;SPAN class=m&gt;?&amp;gt;&lt;/SPAN&gt;&lt;/FONT&gt; &lt;/DIV&gt;
&lt;DIV class=e&gt;
&lt;DIV&gt;&lt;SPAN class=b&gt;&lt;STRONG&gt;&lt;FONT face="Courier New" color=#ff0000&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/STRONG&gt;&lt;/SPAN&gt; &lt;SPAN class=m&gt;&lt;FONT color=#0000ff&gt;&amp;lt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;SPAN class=t&gt;&lt;FONT color=#990000&gt;base64Binary&lt;/FONT&gt;&lt;/SPAN&gt;&lt;SPAN class=ns&gt;&lt;FONT color=#ff0000&gt; xmlns&lt;/FONT&gt;&lt;/SPAN&gt;&lt;SPAN class=m&gt;&lt;FONT color=#0000ff&gt;="&lt;/FONT&gt;&lt;/SPAN&gt;&lt;B class=ns&gt;&lt;FONT color=#ff0000&gt;http://tempuri.org/&lt;/FONT&gt;&lt;/B&gt;&lt;FONT color=#0000ff&gt;&lt;SPAN class=m&gt;"&lt;/SPAN&gt;&lt;SPAN class=m&gt;&amp;gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;SPAN class=tx&gt;&lt;STRONG&gt;AAEAAAD/////AQAA&lt;BR&gt;AAAAAAAMAgAAAD9BcHBfQ29kZSwgVmVyc2lvbj0wLjAu&lt;BR&gt;MC4wLCBDdWx0dXJlPW5ldXRyYWwsIFB1YmxpY0tleVRv&lt;BR&gt;a2VuPW51bGwFAQAAAAxDdXN0b21lckxpc3QDAAAADUxpc&lt;BR&gt;3RgMStfaXRlbXMMTGlzdGAxK19zaXplD0xpc3RgMStfdmVyc&lt;BR&gt;2lvbgQAAApDdXN0b21lcltdAgAAAAgIAgAAAAkDAAAAAwA&lt;BR&gt;AAAMAAAAHAwAAAAABAAAABAAAAAQIQ3VzdG9tZXICA&lt;BR&gt;AAACQQAAAAJBQAAAAkGAAAACgUEAAAACEN1c3RvbW&lt;BR&gt;VyAQAAAAJjbgECAAAABgcAAAAJQ3VzdG9tZXIxAQUAAA&lt;BR&gt;AEAAAABggAAAAJQ3VzdG9tZXIyAQYAAAAEAAAABgkAAA&lt;BR&gt;AJQ3VzdG9tZXIzCw==&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;SPAN class=m&gt;&lt;FONT color=#0000ff&gt;&amp;lt;/&lt;/FONT&gt;&lt;/SPAN&gt;&lt;SPAN class=t&gt;&lt;FONT color=#990000&gt;base64Binary&lt;/FONT&gt;&lt;/SPAN&gt;&lt;SPAN class=m&gt;&lt;FONT color=#0000ff&gt;&amp;gt;&lt;/FONT&gt;&lt;/SPAN&gt; &lt;/DIV&gt;&lt;/DIV&gt;&lt;BR&gt;&lt;/CODE&gt;&lt;FONT size=4&gt;&lt;STRONG&gt;&lt;BR&gt;&lt;BR&gt;&lt;BR&gt;&lt;BR&gt;Form1.vb&lt;BR&gt;&lt;BR&gt;&lt;/STRONG&gt;&lt;/FONT&gt;&lt;EM&gt;&lt;FONT color=#808080 size=2&gt;this project needs a reference to the .dll that defines CustomerList - add a copy of the .dll to your project and a reference to the .dll&lt;BR&gt;&lt;/FONT&gt;&lt;/EM&gt;&lt;BR&gt;&lt;BR&gt;&lt;BR&gt;&lt;FONT color=#0000ff size=1&gt;&lt;CODE&gt;
&lt;P&gt;&lt;FONT size=2&gt;Imports&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt; System.IO&lt;/FONT&gt;&lt;/P&gt;&lt;FONT color=#0000ff&gt;
&lt;P&gt;&lt;FONT size=2&gt;Imports&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt; CustomerList&lt;/FONT&gt;&lt;/P&gt;&lt;FONT color=#0000ff&gt;
&lt;P&gt;&lt;FONT size=2&gt;Imports&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt; System.Runtime.Serialization.Formatters.Binary&lt;/FONT&gt;&lt;/P&gt;&lt;FONT color=#0000ff&gt;
&lt;P&gt;&lt;FONT size=2&gt;Public&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt; &lt;FONT color=#0000ff&gt;Class&lt;/FONT&gt; Form1&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT size=2&gt;&lt;FONT color=#0000ff&gt;Private&lt;/FONT&gt; &lt;FONT color=#0000ff&gt;Sub&lt;/FONT&gt; Button1_Click(&lt;FONT color=#0000ff&gt;ByVal&lt;/FONT&gt; sender &lt;FONT color=#0000ff&gt;As&lt;/FONT&gt; System.Object, &lt;FONT color=#0000ff&gt;ByVal&lt;/FONT&gt; e &lt;FONT color=#0000ff&gt;As&lt;/FONT&gt; System.EventArgs) &lt;FONT color=#0000ff&gt;Handles&lt;/FONT&gt; Button1.Click&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT size=2&gt;File.WriteAllBytes("c:\temp.str", &lt;FONT color=#0000ff&gt;My&lt;/FONT&gt;.WebServices.Service.GetCustomerList)&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT size=2&gt;&lt;FONT color=#0000ff&gt;Dim&lt;/FONT&gt; fs &lt;FONT color=#0000ff&gt;As&lt;/FONT&gt; &lt;FONT color=#0000ff&gt;New&lt;/FONT&gt; FileStream("c:\temp.str", FileMode.Open)&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT size=2&gt;&lt;FONT color=#0000ff&gt;Dim&lt;/FONT&gt; bf &lt;FONT color=#0000ff&gt;As&lt;/FONT&gt; &lt;FONT color=#0000ff&gt;New&lt;/FONT&gt; BinaryFormatter&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT size=2&gt;&lt;FONT color=#0000ff&gt;Dim&lt;/FONT&gt; cl &lt;FONT color=#0000ff&gt;As&lt;/FONT&gt; CustomerList = bf.Deserialize(fs)&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT size=2&gt;fs.Close()&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT size=2&gt;File.Delete("c:\temp.str")&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT size=2&gt;&lt;FONT color=#0000ff&gt;For&lt;/FONT&gt; i &lt;FONT color=#0000ff&gt;As&lt;/FONT&gt; &lt;FONT color=#0000ff&gt;Integer&lt;/FONT&gt; = 0 &lt;FONT color=#0000ff&gt;To&lt;/FONT&gt; cl.Count - 1&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT size=2&gt;&lt;FONT color=#0000ff&gt;Me&lt;/FONT&gt;.TextBox1.Text = &lt;FONT color=#0000ff&gt;Me&lt;/FONT&gt;.TextBox1.Text &amp;amp; cl(i).CustomerName &amp;amp; vbCrLf&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT color=#0000ff&gt;&lt;FONT size=2&gt;Next&lt;/FONT&gt;&lt;/P&gt;&lt;/FONT&gt;
&lt;P&gt;&lt;FONT size=2&gt;&lt;FONT color=#0000ff&gt;End&lt;/FONT&gt; &lt;/FONT&gt;&lt;FONT color=#0000ff&gt;&lt;FONT size=2&gt;Sub&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT size=2&gt;End&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt; &lt;FONT color=#0000ff size=1&gt;&lt;FONT size=2&gt;Class&lt;/FONT&gt;&lt;/P&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/CODE&gt;&lt;BR&gt;&lt;BR&gt;&lt;BR&gt;&lt;BR&gt;So there you go - Generics over a Web Service without SOAP.&lt;BR&gt;&lt;BR&gt;Have fun!</description></item><item><title>Sv: Re: Generic List get converted into an Array when sent through Web Service?</title><link>http://forums.asp.net/thread/1055792.aspx</link><pubDate>Sun, 18 Sep 2005 21:43:53 GMT</pubDate><guid isPermaLink="false">4c671506-2930-414c-a40b-8bf57ded5924:1055792</guid><dc:creator>badbanana</dc:creator><author>badbanana</author><slash:comments>0</slash:comments><comments>http://forums.asp.net/thread/1055792.aspx</comments><wfw:commentRss>http://forums.asp.net/commentrss.aspx?SectionID=15&amp;PostID=1055792</wfw:commentRss><description>Thanks. But ah man, that was some hefty info &lt;img src="/emoticons/emotion-11.gif" alt="Cool [H]" /&gt;.&lt;BR&gt;Would you be so kind showing me some code how to accomplish this?. &lt;img src="/emoticons/emotion-2.gif" alt="Big Smile [:D]" /&gt;</description></item><item><title>Re: Generic List get converted into an Array when sent through Web Service?</title><link>http://forums.asp.net/thread/1055788.aspx</link><pubDate>Sun, 18 Sep 2005 21:35:08 GMT</pubDate><guid isPermaLink="false">4c671506-2930-414c-a40b-8bf57ded5924:1055788</guid><dc:creator>JDHill</dc:creator><author>JDHill</author><slash:comments>0</slash:comments><comments>http://forums.asp.net/thread/1055788.aspx</comments><wfw:commentRss>http://forums.asp.net/commentrss.aspx?SectionID=15&amp;PostID=1055788</wfw:commentRss><description>SoapFormatter does not support Generics.&lt;BR&gt;&lt;BR&gt;I've not done this, but since the app on the other end is .Net you should be able to serialize with the BinaryFormatter, read the FileStream into a String, pass the String over the wire, read&amp;nbsp;it&amp;nbsp;back&amp;nbsp;into a Stream, and deserialize into&amp;nbsp;your List&amp;lt;Customer&amp;gt; with no firewall troubles.&lt;BR&gt;&lt;BR&gt;Hope this is helpful.</description></item><item><title>Generic List get converted into an Array when sent through Web Service?</title><link>http://forums.asp.net/thread/1055533.aspx</link><pubDate>Sun, 18 Sep 2005 13:21:57 GMT</pubDate><guid isPermaLink="false">4c671506-2930-414c-a40b-8bf57ded5924:1055533</guid><dc:creator>badbanana</dc:creator><author>badbanana</author><slash:comments>0</slash:comments><comments>http://forums.asp.net/thread/1055533.aspx</comments><wfw:commentRss>http://forums.asp.net/commentrss.aspx?SectionID=15&amp;PostID=1055533</wfw:commentRss><description>&lt;FONT color=#0000ff size=2&gt;
&lt;P&gt;&lt;FONT color=#000000&gt;&lt;STRONG&gt;Hello, i have a customer object like this:&lt;/STRONG&gt;&lt;/FONT&gt;&lt;BR&gt;&lt;BR&gt;public&lt;/FONT&gt;&lt;FONT size=2&gt; &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;class&lt;/FONT&gt;&lt;FONT size=2&gt; &lt;/FONT&gt;&lt;FONT color=#008080 size=2&gt;Customer&lt;BR&gt;&lt;/FONT&gt;&lt;FONT size=2&gt;{&lt;BR&gt;&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;public&lt;/FONT&gt;&lt;FONT size=2&gt; Customer()&lt;BR&gt;{&lt;BR&gt;&lt;BR&gt;}&lt;/P&gt;
&lt;P&gt;&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;private&lt;/FONT&gt;&lt;FONT size=2&gt; &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;string&lt;/FONT&gt;&lt;FONT size=2&gt; customername;&lt;BR&gt;&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;public&lt;/FONT&gt;&lt;FONT size=2&gt; &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;string&lt;/FONT&gt;&lt;FONT size=2&gt; CustomerName&lt;BR&gt;{&lt;BR&gt;&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;get&lt;/FONT&gt;&lt;FONT size=2&gt; { &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;return&lt;/FONT&gt;&lt;FONT size=2&gt; customername; }&lt;BR&gt;&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;set&lt;/FONT&gt;&lt;FONT size=2&gt; { customername = &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;value&lt;/FONT&gt;&lt;FONT size=2&gt;; }&lt;BR&gt;}&lt;BR&gt;&lt;BR&gt;}&lt;BR&gt;&lt;BR&gt;&lt;BR&gt;&lt;STRONG&gt;And a generic Customer collection that can contain customer objects like this:&lt;/STRONG&gt;&lt;BR&gt;&lt;FONT color=#0000ff size=2&gt;&lt;/P&gt;
&lt;P&gt;public&lt;/FONT&gt;&lt;FONT size=2&gt; &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;class&lt;/FONT&gt;&lt;FONT size=2&gt; &lt;/FONT&gt;&lt;FONT color=#008080 size=2&gt;CustomerList&lt;/FONT&gt;&lt;FONT size=2&gt; : &lt;/FONT&gt;&lt;FONT color=#008080 size=2&gt;List&lt;/FONT&gt;&lt;FONT size=2&gt;&amp;lt;&lt;/FONT&gt;&lt;FONT color=#008080 size=2&gt;Customer&lt;/FONT&gt;&lt;FONT size=2&gt;&amp;gt;&lt;BR&gt;{&lt;BR&gt;&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;public&lt;/FONT&gt;&lt;FONT size=2&gt; CustomerList()&lt;BR&gt;{&lt;BR&gt;&lt;BR&gt;}&lt;BR&gt;&lt;BR&gt;}&lt;BR&gt;&lt;BR&gt;&lt;BR&gt;&lt;STRONG&gt;I&amp;nbsp;populate a CustomerList with some Customer objects and send the CustomerList through a web service:&lt;BR&gt;&lt;/STRONG&gt;&lt;BR&gt;&lt;FONT size=2&gt;&lt;/P&gt;
&lt;P&gt;[&lt;/FONT&gt;&lt;FONT color=#008080 size=2&gt;WebMethod&lt;/FONT&gt;&lt;FONT size=2&gt;]&lt;BR&gt;&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;public&lt;/FONT&gt;&lt;FONT size=2&gt; &lt;/FONT&gt;&lt;FONT color=#008080 size=2&gt;CustomerList&lt;/FONT&gt;&lt;FONT size=2&gt; GetCustomerList()&lt;BR&gt;{&lt;BR&gt;&lt;BR&gt;&lt;/FONT&gt;&lt;FONT color=#008080 size=2&gt;CustomerList&lt;/FONT&gt;&lt;FONT size=2&gt; myCustomerList = &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;new&lt;/FONT&gt;&lt;FONT size=2&gt; &lt;/FONT&gt;&lt;FONT color=#008080 size=2&gt;CustomerList&lt;/FONT&gt;&lt;FONT size=2&gt;();&lt;BR&gt;&lt;/FONT&gt;&lt;FONT color=#008080 size=2&gt;Customer&lt;/FONT&gt;&lt;FONT size=2&gt; myCustomer = &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;new&lt;/FONT&gt;&lt;FONT size=2&gt; &lt;/FONT&gt;&lt;FONT color=#008080 size=2&gt;Customer&lt;/FONT&gt;&lt;FONT size=2&gt;();&lt;BR&gt;myCustomer.CustomerName = &lt;/FONT&gt;&lt;FONT color=#800000 size=2&gt;"Hello this is a test"&lt;/FONT&gt;&lt;FONT size=2&gt;;&lt;BR&gt;myCustomerList.Add(myCustomer);&lt;/P&gt;
&lt;P&gt;&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;return&lt;/FONT&gt;&lt;FONT size=2&gt; my&lt;/FONT&gt;&lt;FONT color=#008080 size=2&gt;CustomerList&lt;/FONT&gt;&lt;FONT size=2&gt;;&lt;BR&gt;}&lt;/P&gt;
&lt;P&gt;&lt;/FONT&gt;&lt;BR&gt;&lt;STRONG&gt;But&amp;nbsp; on the&amp;nbsp;client end, the windows application that is going to consume the web service, this generic CustomerList has turned into an&lt;BR&gt;Array of Customers?? Customer[] Customers=new Customers[]... Why is that, what am i doing wrong?, i want to the CustomerList to "stay" a CustomerList even though im sending it through a web service, but it gets converted into an array &lt;img src="/emoticons/emotion-6.gif" alt="Sad [:(]" /&gt; , Im using the August CTP..&lt;BR&gt;&lt;BR&gt;And if i invoke this WebMethod the XML look like this:&lt;BR&gt;&lt;BR&gt;&lt;BR&gt;&lt;/STRONG&gt;&lt;FONT color=#0000ff&gt;&lt;SPAN class=m&gt;&amp;lt;?&lt;/SPAN&gt;&lt;SPAN class=pi&gt;xml version="1.0" encoding="utf-8" &lt;/SPAN&gt;&lt;SPAN class=m&gt;?&amp;gt;&lt;/SPAN&gt;&lt;/FONT&gt; &lt;/P&gt;
&lt;DIV class=e&gt;
&lt;DIV class=c&gt;&lt;A class=b href="http://localhost:1036/AutoSyncWebService/Service.asmx/GetCustomerList#"&gt;&lt;STRONG&gt;&lt;FONT face="Courier New" color=#ff0000&gt;-&lt;/FONT&gt;&lt;/STRONG&gt;&lt;/A&gt;&lt;STRONG&gt; &lt;SPAN class=m&gt;&lt;FONT color=#0000ff&gt;&amp;lt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;SPAN class=t&gt;&lt;FONT color=#990000&gt;ArrayOfCustomer&lt;/FONT&gt;&lt;/SPAN&gt;&lt;SPAN class=ns&gt;&lt;FONT color=#ff0000&gt; xmlns:xsi&lt;/FONT&gt;&lt;/SPAN&gt;&lt;SPAN class=m&gt;&lt;FONT color=#0000ff&gt;="&lt;/FONT&gt;&lt;/SPAN&gt;&lt;FONT color=#ff0000&gt;http://www.w3.org/2001/XMLSchema-instance&lt;/FONT&gt;&lt;SPAN class=m&gt;&lt;FONT color=#0000ff&gt;"&lt;/FONT&gt;&lt;/SPAN&gt;&lt;SPAN class=ns&gt;&lt;FONT color=#ff0000&gt; xmlns:xsd&lt;/FONT&gt;&lt;/SPAN&gt;&lt;SPAN class=m&gt;&lt;FONT color=#0000ff&gt;="&lt;/FONT&gt;&lt;/SPAN&gt;&lt;FONT color=#ff0000&gt;http://www.w3.org/2001/XMLSchema&lt;/FONT&gt;&lt;SPAN class=m&gt;&lt;FONT color=#0000ff&gt;"&lt;/FONT&gt;&lt;/SPAN&gt;&lt;SPAN class=ns&gt;&lt;FONT color=#ff0000&gt; xmlns&lt;/FONT&gt;&lt;/SPAN&gt;&lt;SPAN class=m&gt;&lt;FONT color=#0000ff&gt;="&lt;/FONT&gt;&lt;/SPAN&gt;&lt;FONT color=#ff0000&gt;http://tempuri.org/&lt;/FONT&gt;&lt;FONT color=#0000ff&gt;&lt;SPAN class=m&gt;"&lt;/SPAN&gt;&lt;SPAN class=m&gt;&amp;gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/STRONG&gt;&lt;/DIV&gt;
&lt;DIV&gt;
&lt;DIV class=e&gt;
&lt;DIV class=c&gt;&lt;A class=b href="http://localhost:1036/AutoSyncWebService/Service.asmx/GetCustomerList#"&gt;&lt;STRONG&gt;&lt;FONT face="Courier New" color=#ff0000&gt;-&lt;/FONT&gt;&lt;/STRONG&gt;&lt;/A&gt;&lt;STRONG&gt; &lt;SPAN class=m&gt;&lt;FONT color=#0000ff&gt;&amp;lt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;SPAN class=t&gt;&lt;FONT color=#990000&gt;Customer&lt;/FONT&gt;&lt;/SPAN&gt;&lt;SPAN class=m&gt;&lt;FONT color=#0000ff&gt;&amp;gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/STRONG&gt;&lt;/DIV&gt;
&lt;DIV&gt;
&lt;DIV class=e&gt;
&lt;DIV&gt;&lt;STRONG&gt;&lt;SPAN class=b&gt;&lt;FONT face="Courier New" color=#ff0000&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/SPAN&gt; &lt;SPAN class=m&gt;&lt;FONT color=#0000ff&gt;&amp;lt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;SPAN class=t&gt;&lt;FONT color=#990000&gt;CustomerName&lt;/FONT&gt;&lt;/SPAN&gt;&lt;SPAN class=m&gt;&lt;FONT color=#0000ff&gt;&amp;gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;SPAN class=tx&gt;Hello this is a test&lt;/SPAN&gt;&lt;SPAN class=m&gt;&lt;FONT color=#0000ff&gt;&amp;lt;/&lt;/FONT&gt;&lt;/SPAN&gt;&lt;SPAN class=t&gt;&lt;FONT color=#990000&gt;CustomerName&lt;/FONT&gt;&lt;/SPAN&gt;&lt;SPAN class=m&gt;&lt;FONT color=#0000ff&gt;&amp;gt;&lt;/FONT&gt;&lt;/SPAN&gt; &lt;/STRONG&gt;&lt;/DIV&gt;&lt;/DIV&gt;
&lt;DIV&gt;&lt;STRONG&gt;&lt;SPAN class=b&gt;&lt;FONT face="Courier New" color=#ff0000&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/SPAN&gt; &lt;SPAN class=m&gt;&lt;FONT color=#0000ff&gt;&amp;lt;/&lt;/FONT&gt;&lt;/SPAN&gt;&lt;SPAN class=t&gt;&lt;FONT color=#990000&gt;Customer&lt;/FONT&gt;&lt;/SPAN&gt;&lt;SPAN class=m&gt;&lt;FONT color=#0000ff&gt;&amp;gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/STRONG&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;
&lt;DIV&gt;&lt;STRONG&gt;&lt;SPAN class=b&gt;&lt;FONT face="Courier New" color=#ff0000&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/SPAN&gt; &lt;SPAN class=m&gt;&lt;FONT color=#0000ff&gt;&amp;lt;/&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/STRONG&gt;&lt;SPAN&gt;&lt;FONT color=#990000&gt;&lt;STRONG&gt;ArrayOfCustomer&lt;/STRONG&gt;&lt;/FONT&gt;&lt;FONT color=#0000ff&gt;&lt;STRONG&gt;&amp;gt;&lt;BR&gt;&lt;BR&gt;&lt;BR&gt;&lt;FONT color=#000000&gt;As you can see, the CustomerList has turned into an Array of Customers?..&lt;/FONT&gt;&lt;/STRONG&gt; &lt;BR&gt;&lt;BR&gt;&lt;BR&gt;&lt;BR&gt;&lt;BR&gt;&lt;BR&gt;.&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/FONT&gt;&lt;/FONT&gt;</description></item></channel></rss>