国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > .NET > 正文

ASP.NET利用webclient獲取頁面源代碼的解決方

2024-07-10 13:10:49
字體:
來源:轉載
供稿:網友
  • 網站運營seo文章大全
  • 提供全面的站長運營經驗及seo技術!
  •   頁面中包括datagrid時,利用webclient獲取頁面源代碼的解決方

       主要問題,利用webclent獲取頁面源代碼時,當頁面中含有datagrid,并且該控件使用了自帶的分頁功能時,正常的方法只能獲取第一頁面的數據,其它頁面的數據取不到,以下是解決方法。

      方法一:

      主要思路是利用webclient,post數據到服務來取得數據,這里主要用了一個小工具可以分析頁面的組成及運行過程,分析中發現當點擊下一頁時,會post三個參數過去, 分別是:__eventtarget、__eventargument、__viewstate。這里__viewstate參數在從打開第一頁數據時取得,__eventtarget為要調用控件的名稱(可以通過httpwatch來獲取) ,__eventargument是調用事件時的參數,代碼如下:

       string result="";
       result = this.loadtop ("http://localhost/projectinfo.aspx?jobno1=2001-09110");
         string vie = gettagcontent(result,"name=/"__viewstate/" value=/"","/" />");
       vie=vie.replace ("name=/"__viewstate/" value=/"","");
       vie=vie.replace ("/" />","");
       webclient a = new webclient();
       namevaluecollection na = new namevaluecollection();
       na.add("__eventtarget","newhousegridmodule1:modulesplitpage:lbnnextpage");
       na.add("__viewstate",vie); 
       byte [] ss = a.uploadvalues("http://localhost/projectinfo.aspx?jobno1=2001-09110","post",na);
       encoding encode=encoding .getencoding ("utf-8");
       result=encode.getstring(ss);

      方法二:

      利用axwebbrowser控件,下載第一頁,然后在最下面這如下代碼:

    <script language='javascript' type='text/javascript'>__dopostback('newhousegridmodule1$modulesplitpage$lbnnextpage','');</script>

    發表評論 共有條評論
    用戶名: 密碼:
    驗證碼: 匿名發表
    主站蜘蛛池模板: 高青县| 司法| 工布江达县| 宁陵县| 汨罗市| 东港市| 澎湖县| 兴隆县| 梁山县| 汤阴县| 汾阳市| 吴旗县| 开化县| 景东| 莆田市| 沅陵县| 广昌县| 贡觉县| 涿鹿县| 富裕县| 浙江省| 张家口市| 广昌县| 珲春市| 且末县| 桓仁| 安远县| 通州区| 崇州市| 凌源市| 承德县| 甘谷县| 烟台市| 龙南县| 庆城县| 珠海市| 扶风县| 阳山县| 鄄城县| 长沙市| 阳原县|