asp.net 无法将类型“System.DateTime”隐式转换为“string”
编译器错误消息:CS0029:无法将类型“System.DateTime”隐式转换为“string”源错误:行22:{行23:st_name=nst_name;行24:s...
编译器错误消息: CS0029: 无法将类型“System.DateTime”隐式转换为“string”
源错误:
行 22: {
行 23: st_name = nst_name;
行 24: st_csrq = nst_csrq;
行 25: st_code = nst_code;
行 26:
类文件
public class c31
{
public c31()
{
}
public c31(string nst_name, DateTime nst_csrq, string nst_code)
{
st_name = nst_name;
st_csrq = nst_csrq;
st_code = nst_code;
}
public string st_name
{
get;
set;
}
public string st_csrq
{
get;
set;
}
public string st_code
{
get;
set;
}
}
实例
public partial class _3_1 : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
c31 new_1=new c31();
c31 new_2 = new c31("王同学","444545197606203999");
new_1.st_name = "李同学";
new_1.st_csrq = new DateTime(1977,3,22);
new_1.st_csrq.ToString;
new_1.st_code = "442251197703220658";
Response.Write("姓名:"+new_1.st_name.ToString+"<br/>");
Response.Write("出生日期"+new_1.st_csrq.ToString("yyyy-MM-dd"));
}
}
请问这是为什么啊 ? 展开
源错误:
行 22: {
行 23: st_name = nst_name;
行 24: st_csrq = nst_csrq;
行 25: st_code = nst_code;
行 26:
类文件
public class c31
{
public c31()
{
}
public c31(string nst_name, DateTime nst_csrq, string nst_code)
{
st_name = nst_name;
st_csrq = nst_csrq;
st_code = nst_code;
}
public string st_name
{
get;
set;
}
public string st_csrq
{
get;
set;
}
public string st_code
{
get;
set;
}
}
实例
public partial class _3_1 : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
c31 new_1=new c31();
c31 new_2 = new c31("王同学","444545197606203999");
new_1.st_name = "李同学";
new_1.st_csrq = new DateTime(1977,3,22);
new_1.st_csrq.ToString;
new_1.st_code = "442251197703220658";
Response.Write("姓名:"+new_1.st_name.ToString+"<br/>");
Response.Write("出生日期"+new_1.st_csrq.ToString("yyyy-MM-dd"));
}
}
请问这是为什么啊 ? 展开
9个回答
展开全部
亲:
MyModel1.EntireTime是DateTime类型this.txtEntireTime.Text.ToStirng()是String类型
这样子是类型不一致的。
MyModel1.EntireTime=Convert.toDateTime(this.txtEntireTime.Text.ToStirng());
要将this.txtEntireTime.Text.ToStirng()转换为为DateTime类型
但是前提要保证你的this.txtEntireTime.Text.ToStirng()要验证
MyModel1.EntireTime是DateTime类型this.txtEntireTime.Text.ToStirng()是String类型
这样子是类型不一致的。
MyModel1.EntireTime=Convert.toDateTime(this.txtEntireTime.Text.ToStirng());
要将this.txtEntireTime.Text.ToStirng()转换为为DateTime类型
但是前提要保证你的this.txtEntireTime.Text.ToStirng()要验证
展开全部
MyModel.EntireTime是SystemDateTime类型的,而右边ToString()之后是字符串,没法直接赋值。
你应该根据字符串中表示日期的格式编写将字符串转化为SystemDateTime的函数或方法。
你应该根据字符串中表示日期的格式编写将字符串转化为SystemDateTime的函数或方法。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
你的构造函数
public c31(string nst_name, DateTime nst_csrq, string nst_code)
{
st_name = nst_name;
st_csrq = nst_csrq;
st_code = nst_code;
}
中直接把nst_csrq赋值给 st_csrq,然而
public string st_csrq
{
get;
set;
}
此字段是string型的,所以会错误,你可以这样写构造函数
public c31(string nst_name, DateTime nst_csrq, string nst_code)
{
st_name = nst_name;
st_csrq = nst_csrq.ToShortDateString();
st_code = nst_code;
}
public c31(string nst_name, DateTime nst_csrq, string nst_code)
{
st_name = nst_name;
st_csrq = nst_csrq;
st_code = nst_code;
}
中直接把nst_csrq赋值给 st_csrq,然而
public string st_csrq
{
get;
set;
}
此字段是string型的,所以会错误,你可以这样写构造函数
public c31(string nst_name, DateTime nst_csrq, string nst_code)
{
st_name = nst_name;
st_csrq = nst_csrq.ToShortDateString();
st_code = nst_code;
}
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
你可以试试这么写:
MyModel1.EntireTime=DateTime.Parse(this.txtEntireTime.Text.ToStirng());就是把txtEntireTime的Text的值强制转化为DateTime类型
MyModel1.EntireTime=DateTime.Parse(this.txtEntireTime.Text.ToStirng());就是把txtEntireTime的Text的值强制转化为DateTime类型
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
不要用ToString("yyyy-MM-dd")
如果你要转成年-月-日形式的话应该是ToLongDateString();
如果你要转成月-日形式就是ToShotDateString();
年-月-日 时:分:秒 ToLongTimeString();
....
方法都有 其他的格式可以自己试
如果你要转成年-月-日形式的话应该是ToLongDateString();
如果你要转成月-日形式就是ToShotDateString();
年-月-日 时:分:秒 ToLongTimeString();
....
方法都有 其他的格式可以自己试
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询