WebService返回DataTable問題

來源:互聯網
上載者:User

標籤:tar   檔案   string   set   os   類   

今天做項目時,想在WebService中返回DataTable,在單位沒成功,看網上有人說datable在.net1.1中是沒有序列化的,不能直接在webservice中返回,可以返回dataset.晚上回家又上網找了一下,看到說法基本一致,還有一篇被引用很多的文章說在asp.net2.0中datatable已經被序列化了,但是還需要自己手動寫一些代碼才能從webservice中返回.我就想一定要寫另寫代碼嗎?繼續尋找,發現有人說必須給datable起名就可以返回了,還可以在調用端手動轉換為datatable類型.又做了一遍,完全通過了,不用強制類型轉換了.代碼如下:

     webservice檔案中

         [WebMethod]
         public DataTable dt()
         {
             DataTable dt = new DataTable("default");
             dt.Columns.Add("id");
             dt.Columns.Add("name");
             for (int i = 0; i < 10; i++)
             {
                 DataRow dr = dt.NewRow();
                 dr["id"] = i.ToString();
                 dr["name"] = "name" + i.ToString();
                 dt.Rows.Add(dr);
             }
             return dt;
         }

        調用頁面中

             WebService1.WebService1 service = new WebService1.WebService1();
             DataTable dt = service.dt();
             gvUser.DataSource = dt;
             gvUser.DataBind();

       最關鍵的是在webservice的方法中為datatable命名,否則就會報錯.

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.