'方法“ToString”没有重载;需要“1”论点将日期时间字段格式化为字符串“dd-MM-yyyy”时发生错误格式
我一直在研究 asp.net 3.5。我想将日期时间数据从 sqldatareader 转换为 "dd-MM-yyyy"
格式的字符串。 但是当我使用 "dd-MM-yyyy"
格式化参数作为 "rdMonthlyLeave["LEAVE_DATE"].ToString("dd-MM-yyyy")"
浏览器返回编译错误为
编译器错误消息:CS1501:方法“ToString”没有重载,需要“1”个参数
您有解决方案吗?
I have been working on asp.net 3.5.I want to Convert a DateTime Data from sqldatareader to a String on "dd-MM-yyyy"
Format.
But when I use "dd-MM-yyyy"
formatting parameter as "rdMonthlyLeave["LEAVE_DATE"].ToString("dd-MM-yyyy")"
browser returns compile error as
Compiler Error Message: CS1501: No overload for method 'ToString' takes '1' arguments
Do you have a solution?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
您需要首先将其转换为
DateTime
:或者只是
DataReader 索引器的返回类型只是
object
,而object
没有ToString
的重载,它接受一个字符串。不要忘记,重载是编译时决策 - 编译器会选择具有兼容签名的适当方法,并且仅根据执行时类型发生重写。在这种情况下,没有具有兼容签名的ToString
重载,因此您会收到编译时错误。You need to cast it to
DateTime
first:or just
The return type of the DataReader indexer is just
object
, andobject
doesn't have an overload ofToString
which takes a string. Don't forget that overloading is a compile-time decision - the compiler picks the appropriate method with a compatible signature, and only overriding occurs based on the execution-time type. In this case there is no overload ofToString
with a compatible signature, so you get a compile-time error.