日期:2014-05-19  浏览次数:20441 次

类型转换
我在GridView模版列中取出值:
-------------------
  TextBox   NewName   =   (TextBox)GvTerm.Rows[0].FindControl( "txtName ");
  TextBox   Begindate   =   (TextBox)GvTerm.Rows[0].FindControl( "txtBegindate ");
  TextBox   Enddate   =   (TextBox)GvTerm.Rows[0].FindControl( "txtEnddate ");
  int   categoryID   =   (int)GvTerm.DataKeys[e.RowIndex].Value;
-------------------------------
赋值----------------------
Edu_TermUpdate(ID,NewName.Text,Begindate.Text,Enddate.Text);
-----------
调用
public   void   Edu_TermUpdate(int   ID,   string   name,string   begin,   string   end)
{}
报错
-------------------
“Edu.Edu_TermUpdate(int,   string,   string,   string)”最匹配的重载方法具有一些无效参数

请问该如何转换类型。谢谢!!~~~~

------解决方案--------------------
没看清楚,但是赋值如果是textbox应该tostring()吧
------解决方案--------------------
Edu_TermUpdate(ID,NewName.Text,Begindate.Text,Enddate.Text);

-----------------------------
Edu_TermUpdate(int32.parse(id),newname.text.tostring(),begindate.text.tostring(),enddate.Text.tostring())
------解决方案--------------------
可能ID的类型不正确,楼主这样试下:
Edu_TermUpdate(Convert.ToInt32(ID),NewName.Text,Begindate.Text,Enddate.Text);
------解决方案--------------------
ID是什么?Edu_TermUpdate(categoryID,NewName.Text,Begindate.Text,Enddate.Text);这样行不行?

------解决方案--------------------
Text的类型不正确,应该加ToString()
Edu_TermUpdate(Convert.ToInt32(ID),NewName.Text.ToString()
,Begindate.Text.ToString(),Enddate.Text.ToString());
------解决方案--------------------
Edu_TermUpdate(Convert.ToInt32(ID),NewName.Text.ToString()
,Begindate.Text.ToString()
,Enddate.Text.ToString()
);

------解决方案--------------------
你声明的是string,和时间没有关系,把textbox.tostring()就可以了.如果要得到时间,Convert.DateTime强制转换也可以的.
------解决方案--------------------
textbox.Text就是string类型,不需要tostring
是不是有重载方法冲突了