dudu
为程序员打杂的站长
博客园
社区
首页
新随笔
联系
管理
订阅
随笔- 1073 文章- 240 评论- 22735
DataTable.Select使用小心得
最近在博客园代码的重构中, 我发觉用DataTable.Select进行XML数据的查询也是挺方便的。
比如我们根据Url中参数值查询XML数据中相应节点的数据。
假如我们有这样的Xml数据文件Catalog.xml:
<
Navigation
>
<
Catalog
title
="非技术区"
url
="default.aspx?cate=2"
rss
="MainFeed.aspx?cate=2"
visible
="true"
cate
="2"
/>
<
Catalog
title
="转载区"
url
="default.aspx?cate=7"
rss
="MainFeed.aspx?cate=7"
visible
="true"
cate
="7"
/>
</
Navigation
>
通过DataTable.Select查询Xml数据的方法是:
DataSet myds
=
new
DataSet();
myds.ReadXml(
"
Catalog.xml
"
);
if
(Request.QueryString[
"
cate
"
]
!=
null
)
{
querystr
=
"
cate=
"
+
Request.QueryString[
"
cate
"
];
}
DataRow[] row
=
myds.Tables[
0
].Select(querystr);
if
(row.Length
>
0
)
{
url
=
row[
0
][
"
url
"
].ToString();
}
一开始我用上面的方法查询能得正确的结果,但当Catalog.xml某个节点的cate>10时,比如cate=10, 通过myds.Tables[0].Select("cate=10")就查询不到cate=10的节点。一开始百思不得其解, 因为我认为cate在myds中是被作为int类型处理的。后来,我想到是不是当cate变成两位数时, DataSet把cate作为字符串处理?我将代码改成:
querystr="cate='"+Request.QueryString["cate"]+"'";
问题就解决了。
posted @ 2004-07-12 20:13
dudu
阅读(10760)
评论(13)
编辑
收藏
网摘
所属分类:
ASP.NET 1.1
发表评论
回复
引用
查看
#1楼
2004-07-12 21:00 |
Evernory
myds.Tables[0].Select("cate='10'")
应该也可以的
回复
引用
查看
#2楼
2004-07-12 23:07 |
笨笨蜗牛
dudu也会犯这样的错?
在XML里面不都是字符串的数据吗?
如果你要使cate的内容为整数,需要定义XML的SHEMA的。
回复
引用
查看
#3楼
2004-07-12 23:14 |
dudu
可为什么cate<10时, 按整数进行查询能得到正确的结果.
回复
引用
查看
#4楼
2004-07-16 20:40 |
笨笨蜗牛
这是字符串比较的问题和整数自动转字符串的问题。
比如:
int i;
string str;
如果要把i转换为字符串后给str,必须:
str=i.ToString();
但这样也可以:
str=i;
另外,还可以:
str="abc"+i;
其等同于:
str="abc"+i.ToString();
回复
引用
#5楼
2004-09-28 10:44 |
zhaoma@hotmail.com [未注册用户]
请教:
如何在查询条件里使用between?
Dim tmpRow As DataRow()
Dim tmpFilter As String = " GroupId =3 and ('" + Format(Now(), "yyyy-MM-dd") + "' Between BeginDate and EndDate))"
tmpRow = _ItemDS.Tables(0).Select(tmpFilter, " ItemId Desc ")
异常详细信息: System.Data.EvaluateException: 表达式包含不支持的运算符“Between”。
回复
引用
#6楼
2005-01-17 21:45 |
LC [未注册用户]
我想知道在条件中能否用日期类型比较,,我的msn:lch5577@hotmail.com
回复
引用
查看
#7楼
2005-04-20 13:24 |
吴正杰
对于字符串 3 > 21
对于整数 3<21
所以出现您说的 <10 的情况下可以
回复
引用
#8楼
2005-08-09 10:44 |
lsmwell [未注册用户]
呵呵,我错的比你们郁闷~!我的是这样写的querystr="id="+id+"";
结果第一条是对的,第二条就错了~!我的XML里的ID 是INT的~!
搞了半天才明白~!原来是这样写就可以了
querystr="id='"+id+"'";
就是加了个单引号~!嘿嘿
回复
引用
#9楼
2005-09-21 09:00 |
READER [未注册用户]
GOOD
回复
引用
#10楼
2005-10-14 11:20 |
hyphappy [未注册用户]
我也遇到类似的问题。AA是字符串类型的,"AA=789" ,"AA=799","AA=499"能够查出来结果。但是"AA=1038"就查不出结果,必须改成"AA='1038'"才可以。
回复
引用
#11楼
2005-12-17 15:26 |
oo [未注册用户]
http://dudu.cnblogs.com/archive/2004/07/12/23537.html
执行 SQL 语句的方式,也有一些不方便,因为带参数的 SQL 语句的参数值也常常是拼接到字符串中,于是便有了诸如“单引号问题”这样的麻烦。
回复
引用
查看
#12楼
2006-02-18 10:42 |
红马天下
我定义XML的SHEMA,数据类型为整数,但是也出现问题。奇怪的是"FileID=4"可以查询,而"FileID=3"不可以查询
回复
引用
查看
#13楼
2007-06-25 16:31 |
流浪浪
DataTable.Select的使用查询还是不错的
在DataSet中用过
新用户注册
刷新评论列表
标题
姓名
主页
Email
(博主才能看到)
验证码
*
看不清,换一张
[
登录
][
注册
]
内容(请不要发表任何与政治相关的内容)
网站首页
新闻频道
社区
小组
博问
网摘
人才
找找看
Remember Me?
登录
使用高级评论
新用户注册
返回页首
恢复上次提交
[使用Ctrl+Enter键可以直接提交]
该文被作者在 2004-07-12 20:16 编辑过
Google站内搜索
China-pub 计算机图书网上专卖店!6.5万品种 2-8折!
近千种 9-95 新二手计算图书火热销售中!
开发者征途系统新作:《设计模式——基于C#的工程化实现及扩展》
相关文章:
相关链接:
所属分类的其他文章:
解读System.Web.UI.Page中关键方法ProcessRequestMain()
关于二级域名Cookie的问题及解决方法
[小经验]ASP.NET页面的编码问题
递归的妙用—遍历子控件
不同程序集之间传递Session的问题
DataTable.Select使用小心得
VS.NET使用小经验
如何实现文本框焦点自动跳转及通过回车键提交表单
自定义UserControl的属性为什么不能在设计时显示在属性窗口中
从CollectionBase继承的类的Deserialize问题
最新IT新闻:
谷歌李开复:我的传奇人生源于十句箴言
Twitter杀手Pownce被收购 两周内关闭服务
Live Search新增“即时返现”服务
MySpace CEO:明年广告营收仍会增长
2日科技博客精选:Windows占有率首次跌破90%
公告
博客园团队
人生的真正价值在于从何种程度与何种意义上摆脱自我!
—爱因斯坦
博客园书店
我的最新闪存
受不了浪曦,又过来发广告!
11-18 15:49
与我联系
发短消息
搜索
常用链接
我的随笔
我的空间
我的短信
我的评论
更多链接
我的参与
我的新闻
最新评论
我的标签
留言簿
给我留言
查看留言
我管理的小组
每日一句英语
创业交流
求职招聘小组
博客园仿真足球交流小组
书籍推荐
读书(Books)
NBear
博客园上海俱乐部
我参加的小组
Ezsocio
Lucene
ASP.NET
jQuery
javascript
IT文学
悟透javascript
Sql Server数据库小组
你必须知道的.NET
WCF技术研究
我参与的团队
Design & Pattern团队(0/892)
SharePoint团队(0/786)
.NET新手training活动(0/553)
上海.NET俱乐部(1/2311)
北京.NET俱乐部(4/1701)
MVP(微软最有价值专家)团队(3/750)
博客园NBear团队(0/48)
博客园创业者(0/52)
Debug 探索团队(0/69)
博客园期刊团队(0/9)
博客园精华集出版(0/45)
Security(0/25)
正则表达式团队(0/2)
随笔分类
ASP.NET 1.1(14)
(rss)
ASP.NET 2.0(13)
(rss)
C#(14)
(rss)
SharePoint(17)
(rss)
VS2005(8)
(rss)
WCF(1)
(rss)
博客系统开发(1)
(rss)
博客园活动(1)
(rss)
创业(6)
(rss)
电脑使用经验(19)
(rss)
开源(5)
(rss)
媒体报道(4)
(rss)
生活随笔(4)
(rss)
书籍(1)
(rss)
数据库技术(3)
(rss)
网站功能发布(71)
(rss)
网站管理(165)
(rss)
网站性能优化(4)
(rss)
音乐心情(5)
(rss)
宅急送快递门事件(12)
(rss)
随笔档案
2008年11月 (5)
2008年10月 (5)
2008年9月 (3)
2008年7月 (4)
2008年6月 (7)
2008年5月 (28)
2008年4月 (15)
2008年3月 (15)
2008年2月 (7)
2008年1月 (9)
2007年12月 (11)
2007年11月 (12)
2007年10月 (13)
2007年9月 (7)
2007年8月 (14)
2007年7月 (16)
2007年6月 (13)
2007年5月 (11)
2007年4月 (6)
2007年3月 (14)
2007年2月 (12)
2007年1月 (15)
2006年12月 (18)
2006年11月 (26)
2006年10月 (20)
2006年9月 (18)
2006年8月 (23)
2006年7月 (17)
2006年6月 (8)
2006年5月 (23)
2006年4月 (10)
2006年3月 (16)
2006年2月 (17)
2006年1月 (9)
2005年12月 (13)
2005年11月 (9)
2005年10月 (19)
2005年9月 (11)
2005年8月 (24)
2005年7月 (34)
2005年6月 (23)
2005年5月 (11)
2005年4月 (21)
2005年3月 (32)
2005年2月 (19)
2005年1月 (23)
2004年12月 (35)
2004年11月 (24)
2004年10月 (19)
2004年9月 (25)
2004年8月 (35)
2004年7月 (30)
2004年6月 (24)
2004年5月 (17)
2004年4月 (9)
2004年3月 (57)
2004年2月 (61)
2004年1月 (32)
新闻分类
创业(17)
(rss)
相册
Imagination Festival 2007
TechED 2005
TechEd 2006
TechEd2007
广州沙龙活动
桌面
HJ
hj小安
(rss)
半含朝雨
(rss)
蛋蛋酱^、^
(rss)
朋友的博客
Allen Lee
bobwang
briansun
Bruce Zhang
CHUN
Dflying Chen
FantasySoft
idior
lemeng
Pedro Serrano
Robert J.T. Yan
simonw
Sisley Lin
sulzbach
Teddy
xuebin
yeka
阿诺
怪怪
韩磊
老燕
雷钧随想
临风听暮禅
灵感之源
吕震宇
双鱼座
维生素C.net
我是坏女生
心仪
网站收藏
codeproject
dotnet.org.za
dotnetjunkies.com
joelonsoftware
沪江英语
苹果树下的童话
译言
小组
博客园在facebook
博客园在豆瓣
博客园在沪江
友情链接
捐献时间、分享快乐
新闻频道
最新随笔
1. 开始组建博客园张江俱乐部(上海)
2. 忙碌的一天
3. 博客园进驻上海张江高科技园区
4. 还是soso惹的祸
5. 在IIS 7中可以轻松实现文件下载次数统计
6. 新的历程
7. 按效果付费
8. 创业心态:繁忙中的冷静
9. memcached
10. 网摘
11. 地铁站一角
12. 来上海一年了
13. 在Windows Server 2008 X64中通过.NET程序调用32位com组件
14. 欢迎申请2008年10月的MVP
15. 新闻频道新增小功能
16. 发布新博客模板-夏日芝兰
17. 专注,专注,还是专注
18. 2008博客园T恤正式发布
19. 2008欧洲杯
20. 《大话设计模式》图书专题上线
Google搜索
最新评论
1. re: 博客园进驻上海张江高科技园区
感谢dudu,感谢博客园所有的人,在这里能学到很多,我就在张江,呵呵 (cutebear)
2. re: 博客园进驻上海张江高科技园区
博客园来过广州吗?啊,我怎么不知道,为什么离开广州呢 (Sam Lin)
3. re: 开始组建博客园张江俱乐部(上海)
俺是一只小菜鸟,不过也是张江人,希望能参加,不要拒绝哦.
很希望能与各位技术大牛在一起,认识一下下..^_^ (上海本帮菜)
4. re: 博客园进驻上海张江高科技园区
支持 (ddda)
5. re: 按效果付费
我想如果这个“商场”,名气特别大,肯定不会让他按效果这么办。 你去新浪首页放广告,不见得让你放呢。 你去西单商场,说给老子一个柜台,老子卖的好了再赏几个租金,可能嘛?? 所以说,既然有广告商来找... (火星人.NET TT)
6. re: 博客园进驻上海张江高科技园区
广州也是一个适合创业的地方,没能和dudu一齐并肩作战,真的有点唏嘘...
Anyway,祝贺老大,祝贺博客园! (FantasySoft)
7. re: 开始组建博客园张江俱乐部(上海)
@醉春风
俱乐部的第一次活动可能就是讨论如何组织俱乐部活动。
(dudu)
8. re: 开始组建博客园张江俱乐部(上海)
俱乐部活动的内容是什么?时间怎么安排的?提议不错
怎么脑袋里一提到俱乐部三字我就想起要喝酒了,见笑了。
(醉春风)
9. re: 开始组建博客园张江俱乐部(上海)
@IMAN
欢迎你过来开博。 (dudu)
10. re: 开始组建博客园张江俱乐部(上海)
还没在此开博呢. 不过我也在张江混. 呵呵 (IMAN)
阅读排行榜
1. 电脑故障处理经验一则(257563)
2. 电脑故障处理小经验—IE无法打开链接的处理方法(256131)
3. 10 Golden rules for publishing your blog (78326)
4. Windows 2000 常见进程功能描述[转帖](66503)
5. 博客园程序源代码下载(63263)
6. 在Windows下配置与使用CVSNT(55592)
7. 新增的MSN图片(54236)
8. 博客园FAQ(45613)
9. 网速测试(39305)
10. 清除SearchNet.exe(26731)
11. 不错的工具:Reflector for .NET (25886)
12. 如何实现文本框焦点自动跳转及通过回车键提交表单(23355)
13. 安装智能陈桥五笔时请小心(21769)
14. 日志文件分析工具—AWStats在IIS中的配置步骤(21702)
15. TortoiseCVS比WinCVS好用多了(19765)
评论排行榜
1. 电脑故障处理经验一则(1122)
2. [重要新功能]团队Blog(618)
3. 博客园FAQ(514)
4. [公告]博客园准备建立SharePoint团队(390)
5. 10 Golden rules for publishing your blog (368)
6. 电脑故障处理小经验—IE无法打开链接的处理方法(357)
7. 博客园程序源代码下载(284)
8. 网速测试(238)
9. 博客园开发团队征婚启示(183)
10. 博客园也Ajax(173)
60天内阅读排行
1. 博客园进驻上海张江高科技园区(3478)
2. 还是soso惹的祸(2561)
3. 开始组建博客园张江俱乐部(上海)(1396)
4. 按效果付费(1143)
5. 创业心态:繁忙中的冷静(901)
6. memcached(832)
7. 新的历程(830)
8. 在IIS 7中可以轻松实现文件下载次数统计(621)
9. 忙碌的一天(247)
10. 为.NET程序员打工的站长(94)
BlogJava
博客生活
IT博客网
C++博客
PHP博客
电子技术博客
管理博客
教师博客
天文博客
汽车博客
足球博客
股票博客