国产探花免费观看_亚洲丰满少妇自慰呻吟_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>

    發表評論 共有條評論
    用戶名: 密碼:
    驗證碼: 匿名發表
    主站蜘蛛池模板: 涪陵区| 进贤县| 竹山县| 措勤县| 涟水县| 平凉市| 攀枝花市| 南昌县| 贵溪市| 惠来县| 曲水县| 出国| 同江市| 新营市| 屯门区| 丘北县| 桂平市| 鄂托克旗| 右玉县| 布拖县| 怀宁县| 武威市| 海阳市| 曲水县| 山丹县| 称多县| 巴中市| 大竹县| 梓潼县| 高州市| 南康市| 英吉沙县| 舟曲县| 凌海市| 延安市| 阿合奇县| 曲周县| 枞阳县| 讷河市| 中阳县| 中阳县|