成人性生交大片免费看视频r_亚洲综合极品香蕉久久网_在线视频免费观看一区_亚洲精品亚洲人成人网在线播放_国产精品毛片av_久久久久国产精品www_亚洲国产一区二区三区在线播_日韩一区二区三区四区区区_亚洲精品国产无套在线观_国产免费www

主頁 > 知識庫 > ASP.NET怎么操作DataTable實(shí)例應(yīng)用

ASP.NET怎么操作DataTable實(shí)例應(yīng)用

熱門標(biāo)簽:云南外呼電銷機(jī)器人系統(tǒng) 地圖標(biāo)注多個行程 浙江外呼系統(tǒng)怎么安裝 山西防封卡電銷卡套餐 廈門商鋪地圖標(biāo)注 陜西人工外呼系統(tǒng)哪家好 銅川小型外呼系統(tǒng)運(yùn)營商 上海楊浦怎么申請申請400電話 海外地圖標(biāo)注門市標(biāo)
有機(jī)會在博客園的博問頻道上看到一個問題,《ASP.NET怎么操作DataTable》:


如上圖,左邊的這個表是程序構(gòu)建出來的,不是數(shù)據(jù)庫表,怎么通過操作DataTable手段得到右邊的四個表?

Insus.NET嘗試做了一下,算是練習(xí)DataTable的功力了。效果如下:


根據(jù)最初數(shù)據(jù),Insus.NET在.aspx內(nèi)放置了一個Gridview,用來顯示最開始的數(shù)據(jù)。

復(fù)制代碼 代碼如下:

View Code


asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="false">
Columns>
asp:TemplateField>
HeaderTemplate>
Name
/HeaderTemplate>
ItemTemplate>
%# Eval("Name") %>
/ItemTemplate>
/asp:TemplateField>
asp:TemplateField>
HeaderTemplate>
Quantity
/HeaderTemplate>
ItemTemplate>
%# Eval("Quantity") %>
/ItemTemplate>
/asp:TemplateField>
/Columns>
/asp:GridView>

創(chuàng)建一個DataTable,并填充數(shù)據(jù):
復(fù)制代碼 代碼如下:

View Code

DataTable GetData()
{
DataTable table = new DataTable();
table.Columns.Add("Name", typeof(string));
table.Columns.Add("Quantity", typeof(int));
table.Rows.Add("a", 1);
table.Rows.Add("a", 2);
table.Rows.Add("b", 2);
table.Rows.Add("b", 2);
table.Rows.Add("c", 1);
table.Rows.Add("c", 2);
table.Rows.Add("c", 3);
table.Rows.Add("c", 4);
return table;
}

然后為剛才創(chuàng)建的Gridview綁定這個DataTable:
復(fù)制代碼 代碼如下:

View Code

protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
Data_Binding();
}
}

private void Data_Binding()
{
this.GridView1.DataSource = GetData();
this.GridView1.DataBind();
}

為了得到報(bào)表1,它有三個字段,名稱(Name),數(shù)量(Amount)和行數(shù)(Rowcount),Insus.NET還參考源數(shù)據(jù),它還有一個數(shù)量(Quantity)字段。因此,Insus.NET寫了一個類別Item,為以下導(dǎo)出報(bào)表作準(zhǔn)備:
復(fù)制代碼 代碼如下:

Item

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;

/// summary>
/// Summary description for Item
/// /summary>
namespace Insus.NET
{
public class Item
{
private string _Name;
private int _Quantity;
private int _Amount;
private int _RowCount;

public string Name
{
get { return _Name; }
set { _Name = value; }
}
public int Quantity
{
get { return _Quantity; }
set { _Quantity = value; }
}
public int Amount
{
get { return _Amount; }
set { _Amount = value; }
}
public int RowCount
{
get { return _RowCount; }
set { _RowCount = value; }
}

public Item()
{
//
// TODO: Add constructor logic here
//
}

public Item(string name, int quantity)
{
this._Name = name;
this._Quantity = quantity;
}

public Item(string name, int amount,int rowCount)
{
this._Name = name;
this._Amount = amount;
this._RowCount = rowCount;
}
}
}

OK,現(xiàn)在我們寫一個報(bào)表,在.aspx放在一個按鈕,以及一個GridView,來顯示報(bào)表,注意一個字段的綁定。
復(fù)制代碼 代碼如下:

View Code

asp:Button ID="ButtonReport1" runat="server" Text="報(bào)表1" OnClick="ButtonReport1_Click" />
asp:GridView ID="GridView2" runat="server" AutoGenerateColumns="false">
Columns>
asp:TemplateField>
HeaderTemplate>
Name
/HeaderTemplate>
ItemTemplate>
%# Eval("Name") %>
/ItemTemplate>
/asp:TemplateField>
asp:TemplateField>
HeaderTemplate>
Amount
/HeaderTemplate>
ItemTemplate>
%# Eval("Amount") %>
/ItemTemplate>
/asp:TemplateField>
asp:TemplateField>
HeaderTemplate>
RowCount
/HeaderTemplate>
ItemTemplate>
%# Eval("RowCount") %>
/ItemTemplate>
/asp:TemplateField>
/Columns>
/asp:GridView>

在.cs 寫click事件:
復(fù)制代碼 代碼如下:

View Code


protected void ButtonReport1_Click(object sender, EventArgs e)
{
SortedListstring, Item> _sl = new SortedListstring, Item>();

DataTable otable = GetData();
foreach (DataRow dr in otable.Rows)
{
if (_sl.ContainsKey(dr["Name"].ToString()))
{
_sl[dr["Name"].ToString()].Amount += Convert.ToInt32(dr["Quantity"]);
_sl[dr["Name"].ToString()].RowCount += 1;
}
else
{
Item i = new Item(dr["Name"].ToString(), Convert.ToInt32(dr["Quantity"]), 1);
_sl.Add(dr["Name"].ToString(), i);
}
}

this.GridView2.DataSource = _sl.Values;
this.GridView2.DataBind();
}

第一份報(bào)表,大功告成,只要DataTable數(shù)源數(shù)據(jù)有變化,報(bào)表也會隨之變化。

接下來,完成第二個報(bào)表,在Insus.NET使用Repeater包含Repeater來實(shí)現(xiàn)。因此,前臺Html代碼如下,其中第一個Repeate內(nèi)放置了一個HiddenField,來存儲名稱(Name)字段,當(dāng)作子Repeater的參考傳入。
復(fù)制代碼 代碼如下:

View Code


asp:Button ID="ButtonReport2" runat="server" Text="報(bào)表2" OnClick="ButtonReport2_Click" />
asp:Repeater ID="Repeater1" runat="server" OnItemDataBound="Repeater1_ItemDataBound">
ItemTemplate>
asp:HiddenField ID="HiddenField1" runat="server" Value='%# Container.DataItem %>' />
asp:Repeater ID="Repeater2" runat="server">
HeaderTemplate>
table border="1" cellspacing="0" cellpadding="5" style="margin: 10px; border-collapse: collapse;">
tr>
td>Name/td>
td>Quantity/td>
/tr>
/HeaderTemplate>
ItemTemplate>
tr>
td>%# Eval("Name") %>/td>
td>%# Eval("Quantity") %>/td>
/tr>
/ItemTemplate>
FooterTemplate>
/table>
/FooterTemplate>
/asp:Repeater>
/ItemTemplate>
/asp:Repeater>

首先,我們需要從DataTable,獲取名稱(Name)唯一的記錄存儲起來,作為第一個Repeate控件的數(shù)據(jù)集數(shù)據(jù)源。
復(fù)制代碼 代碼如下:

View Code


protected void ButtonReport2_Click(object sender, EventArgs e)
{
this.Repeater1.DataSource = Names();
this.Repeater1.DataBind();
}

Liststring> Names()
{
Liststring> t = new Liststring>();
DataTable otable = GetData();
foreach (DataRow dr in otable.Rows)
{
if (!t.Contains(dr["Name"].ToString()))
t.Add(dr["Name"].ToString());
}
return t;
}

我們還要寫第二個Repeater控件的數(shù)據(jù)源:
復(fù)制代碼 代碼如下:

View Code


ListItem> GetDataByName(string name)
{
ListItem> o = new ListItem>();
DataTable otable = GetData();
foreach (DataRow dr in otable.Rows)
{
if (name == dr["Name"].ToString())
{
Item i = new Item(dr["Name"].ToString(), Convert.ToInt32(dr["Quantity"]));
o.Add(i);
}
}
return o;
}

為第二個Repeater控件綁定數(shù)據(jù)源,在綁寫之前,得先找到這個控件,因此,你需要在第一個Repeater控件寫OnItemDataBound="Repeater1_ItemDataBound"事件:
復(fù)制代碼 代碼如下:

View Code


protected void Repeater1_ItemDataBound(object sender, RepeaterItemEventArgs e)
{
if (e.Item.ItemType == ListItemType.Item || e.Item.ItemType == ListItemType.AlternatingItem)
{
if (e.Item.FindControl("HiddenField1") != null e.Item.FindControl("Repeater2") != null)
{
var hiddenField = e.Item.FindControl("HiddenField1") as HiddenField;
var repeater = e.Item.FindControl("Repeater2") as Repeater;
repeater.DataSource = GetDataByName(hiddenField.Value);
repeater.DataBind();
}
}
}
您可能感興趣的文章:
  • asp.net實(shí)現(xiàn)導(dǎo)出DataTable數(shù)據(jù)到Word或者Excel的方法
  • asp.net實(shí)現(xiàn)數(shù)據(jù)從DataTable導(dǎo)入到Excel文件并創(chuàng)建表的方法
  • Asp.net中DataTable導(dǎo)出到Excel的方法介紹
  • asp.net 讀取Excel數(shù)據(jù)到DataTable的代碼
  • ASP.NET DataTable去掉重復(fù)行的2種方法
  • ASP.NET中DataTable與DataSet之間的轉(zhuǎn)換示例
  • Asp.net下使用Jquery Ajax傳送和接收DataTable的代碼
  • asp.net 數(shù)據(jù)庫的連接和datatable類
  • Asp.net靜態(tài)方法之Grid轉(zhuǎn)DataTable方法實(shí)現(xiàn)步驟
  • Asp.net實(shí)現(xiàn)選擇性的保留DataTable中的列
  • asp.net DataTable導(dǎo)出Excel自定義列名的方法

標(biāo)簽:萊蕪 信陽 朔州 自貢 許昌 常州 西雙版納 孝感

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《ASP.NET怎么操作DataTable實(shí)例應(yīng)用》,本文關(guān)鍵詞  ASP.NET,怎么,操作,DataTable,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請?zhí)峁┫嚓P(guān)信息告之我們,我們將及時溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《ASP.NET怎么操作DataTable實(shí)例應(yīng)用》相關(guān)的同類信息!
  • 本頁收集關(guān)于ASP.NET怎么操作DataTable實(shí)例應(yīng)用的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章
    999一区二区三区| 99精品一区| 亚洲精品资源美女情侣酒店| 黄色网址大全在线观看| 成人免费视频77777| 国产xxxx做受性欧美88| 91精品国产麻豆国产在线观看| 欧美三级中文字幕| 欧美日韩国产免费一区二区| 91成人国产精品| 日韩av影视在线| 欧美老少配视频| 极品美女销魂一区二区三区| 国产一区二区在线观| 一区二区高清视频| 欧美午夜精品在线| 亚洲熟女综合色一区二区三区| 午夜一区在线观看| 深夜成人在线| 欧美区高清在线| 香港久久久电影| av资源在线看| 国产亚洲一区二区三区| 九九九九久久久久| 97caopor国产在线视频| 国产探花视频在线| 在线观看 亚洲| 精品在线亚洲视频| 国产精品一区二区日韩| 九九热r在线视频精品| 美国一级片在线免费观看视频| 欧美三级黄色大片| 国产精品欧美色图| 中文字幕激情小说| 亚洲永久视频| 波多野结衣绝顶大高潮| 色噜噜狠狠色综合网图区| 清纯唯美亚洲经典中文字幕| 717影院理论午夜伦不卡久久| 国产成人精品免费| av中文在线资源库| 亚洲乱亚洲乱妇无码| 99热99这里只有精品| 欧美日韩一级大片网址| 国产午夜精品久久久久久久| 欧美日韩一区二区三区四区五区六区| 99久久精品久久久久久清纯| 91极品尤物在线播放国产| 久久久久久久蜜桃| 自拍av一区二区三区| 不卡在线视频中文字幕| 国产偷亚洲偷欧美偷精品| 国产成人+综合亚洲+天堂| 4438全国亚洲精品观看视频| 成人短视频在线| 加勒比在线一区二区三区观看| 国产成人亚洲综合色影视| 熟女俱乐部一区二区视频在线| 精品国产无码在线观看| 美女黄色一级视频| 国产福利片在线| 男插女视频网站| 国偷自产av一区二区三区| 精品久久久久中文慕人妻| 超清福利视频| 日韩一卡二卡在线观看| 国产不卡一二三| 欧美色图在线视频| 天天在线女人的天堂视频| 这里只有精品国产| 国产视频一区二区在线播放| 亚洲视频国产视频| 国产99久久久国产精品成人免费| 亚洲av无码国产精品永久一区| 二级片在线观看| 精品少妇人妻av免费久久洗澡| 亚洲电影中文字幕| 欧美一区在线观看视频| 天天干夜夜操| 午夜3点看的视频| 国产精品免费一区二区三区都可以| 久久99国产精品久久99| 视频一区欧美日韩| 精品一区二区在线免费观看| 欧美日韩导航| 日韩电影在线观看永久视频免费网站| 中文字幕乱码av| 国产成人久久精品77777| 卡通动漫亚洲综合| 亚洲成年人电影在线观看| 久久国产成人午夜av影院宅| 热门国产精品亚洲第一区在线| 欧美精品一区二区三区涩爱蜜| 国产精品一区二区欧美黑人喷潮水| 人妻夜夜爽天天爽| 无码熟妇人妻av| 国产精品一区二区三区www| 久草在线免费资源站| 97超碰国产精品女人人人爽| 奇米影视一区二区三区小说| 日本福利片在线观看| av黄色在线网站| 国产欧美精品aaaaaa片| 亚洲av永久纯肉无码精品动漫| 免费毛片aaaaaa| 在线日韩欧美| 亚洲欧美成人一区| 户外露出精品视频国产| 女人18毛片毛片毛片毛片区二| 中文先锋资源| 亚洲欧美国产日韩天堂区| 国产精品久久久毛片| 成人a视频在线| 91社区在线| av在线小说| 午夜欧美一区二区三区在线播放| 男人日女人的bb| 日韩av电影免费| 国产精品一区二区三区乱码| 日韩免费性生活视频播放| 一本色道久久88精品综合| 欧美人与牲禽动交com| 欧洲不卡av| 懂色av一区二区三区四区五区| 久久蜜桃精品| 激情伦成人综合小说| 亚洲午夜久久久久中文字幕| 视频一区视频二区在线观看| 免费成人深夜夜行网站视频| 日韩一区不卡| 日韩三级.com| 免费高清在线| 成人av资源在线播放| 国产嫩草影院久久久久| 国产欧美日韩卡一| 亚洲午夜女主播在线直播| www.久草.com| 老司机福利在线视频| 美国十次了思思久久精品导航| 尤物视频最新网址| 欧美亚洲免费在线一区| 亚洲 欧美综合在线网络| 日本午夜免费福利视频| 国产有码在线一区二区视频| 九九99久久| 青春草国产视频| 激情欧美成人久久综合小说| 天天综合网在线| 久久久久久久黄色片| 你懂得视频网站| 在线成人视屏| 免费vip影院| 日韩高清一区| 久久综合中文色婷婷| 一区二区三区 日韩| 成年人视频软件| 黄色成人在线看| 中文字幕永久视频| 精品国一区二区三区| 精品成人久久av| 视频三区在线| av色综合久久天堂av色综合在| 亚洲三级免费电影| 亚洲精品国产精品乱码不99按摩| 日韩成人黄色| 影音先锋久久精品| 国产人妻精品一区二区三区不卡| 欧美视频官网| 啦啦啦啦免费高清视频在线观看1| 啪一啪鲁一鲁2019在线视频| 日韩一级免费视频| 亚洲国产成人久久综合| 精品亚洲国产视频| 久久久久无码精品| 国模精品一区| 欧美日韩一级黄| eeuss在线观看| 日本一区二区三区免费看| 成人91视频| 久久九九视频| 国产精品亚洲一区二区三区妖精| 国产亚洲视频在线观看| 不卡的一区二区| 国产精品麻豆一区| 亚洲电影在线| 秋霞欧美在线观看| 欧美怡春院一区二区三区| 色噜噜偷拍精品综合在线| 天天操人人干| 69久久久久久| eeuss影院www在线观看| 手机看片1024国产| av漫画网站在线观看| 欧美日韩1区2区3区| av免费播放网址| 久久久久久久久久久久久久一区| 欧美大交乱xxxx| 欧美精品一区二区性色a+v| 婷婷六月天在线| 福利在线视频导航| 午夜电影福利网| 最新中文字幕在线视频| 99久久99久久综合| 中文字幕一区二区三区四区在线视频| 国产第一页视频| 亚洲视频一二三区| 久久99久久久久久久噜噜| 阿v视频在线观看| 欧美激情视频一区二区| 亚洲三级网站| 欧美视频在线观看视频| 久久久久久久久久久久久夜| 国产欧美日韩精品综合| 香蕉久久夜色精品国产更新时间| 91精品国产综合久久婷婷香蕉| 日韩黄色大片网站| 国产成人夜色高潮福利影视| 亚洲国产精品久久久| 精品免费在线观看| 粉嫩av一区二区三区四区五区| 亚洲欧美电影| 亚洲大尺度美女在线| 一区二区欧美国产| 亚洲激情图片qvod| 久久黄色一级视频| 日本欧美视频在线观看| 日韩精品一区二区亚洲av性色| 国产福利一区二区三区| 亚洲香蕉在线视频| 日批视频网站| 18成人免费观看视频| 麻豆国产一区二区三区四区| 成人永久免费网站| 亚洲天堂影视av| 色小说视频一区| 欧美在线观看一区二区| 你懂的一区二区| 亚洲爱爱天堂| 男人的天堂亚洲在线| 少妇久久久久久久久久| 国产成人精品一区二区三区在线| 在线视频一区二区三| 欧美特黄aaaaaaaa大片| 欧美黄色免费看| 极品一区美女高清| 欧美一卡二卡三卡| 毛片无码国产| 精品精品国产三级a∨在线| 日韩黄色高清视频| 国产在线视频不卡| 亚洲精品一区二区妖精| 欧美人与拘性视交免费看| 天天干天天爱天天操| 678在线观看视频| 艳色歌舞团一区二区三区| 国内精品免费午夜毛片| 亚洲欧美日韩不卡| 大白屁股一区二区视频| 日本在线精品视频| 成人春色在线观看免费网站| 开心快乐六月丁香婷婷| 国产精品a成v人在线播放| 性一交一乱一色一视频麻豆| av中文字幕电影在线看| 免费人成自慰网站| 国产在线观看免费视频软件| 欧美人与禽zozzo禽性配| 免费看h片网站| 天天视频一区二区三区| 日本vs亚洲vs韩国一区三区| 一区二区三区视频在线免费观看| 国产精品激情| 色中文字幕在线| 日韩美女免费线视频| 成本人h片动漫网站在线观看| 久久夜精品香蕉| 一区2区3区在线看| 最新av番号| 欧美国产成人精品一区二区三区| 成人av免费电影网站| 精品日韩欧美在线| 欧美极品videos大乳护士| 精品视频三区| 欧美日韩在线播放| 久久免费视频6| 毛片在线不卡| 国产美女被下药99| 欧美极品一区二区| 性做久久久久久免费观看欧美| 国产午夜手机精彩视频| 日韩人妻一区二区三区| 樱空桃在线播放| xvideos.蜜桃一区二区| 国语自产精品视频在线看8查询8| 伊人手机在线| 一区二区三区四区精品视频| 欧美伦理91i| 99久久免费精品国产免费| 小草在线视频在线免费视频| 黄色视屏网站在线免费观看| 欧美日本韩国在线| 欧美在线视频第一页| 亚洲a视频在线观看| 国产精品无码免费专区午夜| 喷白浆一区二区| 婷婷视频一区二区三区| 一区二区三区在线观看欧美| 色婷婷777777仙踪林| 久久成人精品无人区| 99热最新在线| 成人中文字幕+乱码+中文字幕| www.精品国产| 成人福利免费观看| 久久亚洲影院| 国产老熟妇精品观看| 欧美一区二区三区免费观看视频| 蜜桃999成人看片在线观看| 91国偷自产一区二区三区观看| 国产永久免费视频| 牛牛电影国产一区二区| 少妇特黄a一区二区三区| 久久成人精品| 美女被c出白浆| 99久久国产综合精品女不卡| 日韩电影在线观看电影| 夜夜添无码一区二区三区| 久久九九精品| 特黄特黄的视频|