代码分离的过程中两个问题
我在.aspx网页中加入了
<%@Import Namespace=System.Data.SqlClient %>
<%@Import Namespace=System.Data %>
但是在.aspx.vb中使用
SqlDataAdapter等必须在前面加上System.Data.SqlClient.否则无法调试通过
请问为什么?
另外在.aspx代码块中执行正常的语句
sub gridupdate(Sender as Object,E as DataGridCommandEventArgs)
dim introw as integer
dim obj as textbox
introw=e.item.itemindex
obj=MyDataGrid.items(introw).cells(7).controls(0)
在.aspx.vb中使用也报错
说是:
obj=MyDataGrid.items(introw).cells(7).controls(0)出错
异常详细信息: System.ArgumentOutOfRangeException: 指定的参数已超出有效值的范围。参数名: index
问题点数:100、回复次数:26Top
1 楼no1tiger(冷酷)回复于 2004-09-03 20:46:14 得分 0
!!!Top
2 楼bitsbird(一瓢 在路上...)回复于 2004-09-03 20:46:19 得分 0
.net把与sqlserver的一些操作都封装在一个类里:SqlClient,你只需导入引用即可
DataGrid列从0开始0,1,2
Top
3 楼Night_Elf(风暴虫)回复于 2004-09-03 20:47:17 得分 0
1.<%@Import System.Data.SqlClient %>
<%@Import System.Data %>
2.不懂
Top
4 楼Night_Elf(风暴虫)回复于 2004-09-03 20:48:06 得分 0
importsTop
5 楼no1tiger(冷酷)回复于 2004-09-03 20:49:47 得分 0
怎么导入引用啊?
我取出的datagrid列是第一列值是0,没错
估计还是没有倒入的问题Top
6 楼passacaglia(神秘园)回复于 2004-09-03 20:50:27 得分 0
To:在.aspx.vb中使用SqlDataAdapter等必须在前面加...
.aspx和.aspx.vb既然分离,那你就分别引用
To:指定的参数已超出有效值的范围
有没有加上判断:
if(e.Item.ItemType==ListItemType.Item||e.Item.ItemType==ListItemType.AlternatingItem)
{
你的代码;
}Top
7 楼thinkingforever(努力学习)回复于 2004-09-03 20:50:32 得分 0
同意楼上Top
8 楼swzlxm(守望者)回复于 2004-09-03 20:51:56 得分 0
1.在.VB里也加上引用;
2.不是放在哪的问题.请考虑其它问题,单步跟踪一下就知,或者专对此写一些验证代码Top
9 楼no1tiger(冷酷)回复于 2004-09-03 20:53:42 得分 0
代码分离这么麻烦啊?连导入引用都无法实现啊!Top
10 楼maoliner(控制面板)回复于 2004-09-03 20:54:03 得分 0
.aspx.vb必须导入名字空间。.aspx中可不用。是.aspx调用.aspx.vbTop
11 楼no1tiger(冷酷)回复于 2004-09-03 20:54:40 得分 0
1.在.VB里也加上引用;
怎么加啊,我怎么尝试都不行?Top
12 楼maoliner(控制面板)回复于 2004-09-03 20:54:53 得分 0
.aspx.vb不依赖.aspx独立执行
Top
13 楼no1tiger(冷酷)回复于 2004-09-03 20:56:32 得分 0
我问怎么在.aspx.vb
中引用
<%@Import System.Data.SqlClient %>
<%@Import System.Data %>Top
14 楼maoliner(控制面板)回复于 2004-09-03 20:58:00 得分 0
<%@ Import Namespace="System.Data" %>
<%@ Import Namespace="System.Data.SqlClient " %>
Top
15 楼no1tiger(冷酷)回复于 2004-09-03 20:58:08 得分 0
我问怎么在.aspx.vb
中引用象在.aspx中那样引用
<%@Import System.Data.SqlClient %>
<%@Import System.Data %>
Top
16 楼maoliner(控制面板)回复于 2004-09-03 20:59:53 得分 0
Dim myConnection as SqlConnection
Dim mySqlCommand as SqlCommand
Dim mySqlCleanup as SqlCommandTop
17 楼no1tiger(冷酷)回复于 2004-09-03 21:00:24 得分 0
<%@ Import Namespace="System.Data" %>
<%@ Import Namespace="System.Data.SqlClient " %>
放在.aspx.vb中出错
Imports Namespace="System.Data"
Imports Namespace="System.Data.SqlClient"
也不行Top
18 楼no1tiger(冷酷)回复于 2004-09-03 21:02:17 得分 0
???Top
19 楼maoliner(控制面板)回复于 2004-09-03 21:02:18 得分 0
Imports System
Imports System.Data.SqlClientTop
20 楼maoliner(控制面板)回复于 2004-09-03 21:03:36 得分 50
我用c#,没用VB做,找个例子看吧Top
21 楼Night_Elf(风暴虫)回复于 2004-09-03 21:36:31 得分 10
在aspx.vb文件的最上方写上
Imports System.Data
Imports System.Data.SqlClient
Top
22 楼pingnt(淡蓝色的雪)回复于 2004-09-04 00:39:48 得分 30
1、SqlDataAdapter等必须在前面加上System.Data.SqlClient.否则无法调试通过,请问为什么?
答:因为sqldataadapter组件属性的类在默认情况下没有被ASP.NET自动加载.所以你如果需要用到sqldataadapter时,则必须先导引它所在的类system.data.sqlclient
2、<%@ Import Namespace="System.Data" %>
<%@ Import Namespace="System.Data.SqlClient " %>
放入.VB中的方法:
在所有代码的最顶端(即类的最上方)加入:
Imports System.Data
Imports System.Data.SqlClient
3、dim obj as textbox
obj=MyDataGrid.items(introw).cells(7).controls(0)报错?
建议改为:
obj=e.item.findcontrols("TXT")
其中“TXT为你在.ASPX文件中定义的一个TEXTBOX控件.
Top
23 楼no1tiger(冷酷)回复于 2004-09-04 09:58:20 得分 0
第一个问题解决,第二个问题这样改肯定不对,因为我要找的是datagrid某行第某个textbox的值
3、dim obj as textbox
obj=MyDataGrid.items(introw).cells(7).controls(0)报错?
建议改为:
obj=e.item.findcontrols("TXT")
其中“TXT为你在.ASPX文件中定义的一个TEXTBOX控件.Top
24 楼no1tiger(冷酷)回复于 2004-09-04 10:00:32 得分 0
本贴马上要结贴,大家快来抢分!
Top
25 楼bomb_boy(梦之星)回复于 2004-09-04 10:17:52 得分 0
System.Data.SqlClient
System.Data
肯定是要加的
Top
26 楼Edison621(重新来过)回复于 2004-09-04 10:40:07 得分 10
仔细检查索引号,注意是从0开始。
还有,要是Cells(7).Controls(0)不行,试试Cells(7).FindControl(ControlName);
Top




