C# Linq查询错误-无法强制转换类型为';V1.控制者贷款';输入';System.i可转换
在我的第一个查询(C# Linq查询错误-无法强制转换类型为';V1.控制者贷款';输入';System.i可转换,c#,linq,datetime,C#,Linq,Datetime,在我的第一个查询(stringQuery)中,我试图传递一个字符串日期 Linq查询1: var stringQuery = (from p in db.Database_CRE_Events select new Loan() { cDate = p.LastUpdated }).FirstOrDefault();
stringQuery
)中,我试图传递一个字符串日期
Linq查询1:
var stringQuery = (from p in db.Database_CRE_Events
select new Loan()
{
cDate = p.LastUpdated
}).FirstOrDefault();
var dateQuery = (from p in db.Database_CRE_Events.Where(c => c.LastUpdated == dtt)
select new Loan()
{
latest = p.Date
}).FirstOrDefault();
然后我将第一个查询中的字符串日期转换为datetime
字段dtt
。这是因为,在我的第二个查询(dateQuery
)中,我需要在我的where子句中使用这个日期参数(作为datetime),它只接受datetime类型字段
if (stringdQuery != null && stringdQuery.cDate.HasValue)
{
dtt = Convert.ToDateTime(stringdQuery);
}
Linq查询2:
var stringQuery = (from p in db.Database_CRE_Events
select new Loan()
{
cDate = p.LastUpdated
}).FirstOrDefault();
var dateQuery = (from p in db.Database_CRE_Events.Where(c => c.LastUpdated == dtt)
select new Loan()
{
latest = p.Date
}).FirstOrDefault();
但是,当我在客户端执行此函数时,会抛出错误-无法将“STW_V1.Controllers.Loan”类型的对象强制转换为“System.IConvertible”类型
以下行出现错误:
dtt=Convert.ToDateTime(stringQuery)代码>
我在代码中遗漏了什么吗
如果上述解释不清楚,请提前道歉,但请随时提问
谢谢因为stringQuery
返回一个Loan
对象,该对象未实现IConvertible
我怀疑您是想从对象中获取cDate
属性:
if (stringdQuery != null && stringdQuery.cDate.HasValue)
{
dtt = Convert.ToDateTime(stringdQuery.cDate);
}
谢谢你的回复。这帮了大忙。我想问一下,您是否知道IConvertible
的意思?谢谢你的帮助feedback@user3070072阅读它是一个定义方法以转换为各种内置类型的接口。尝试使用该接口将值转换为DateTime
。如果输入不能转换为DateTime
,则抛出InvalidCastException
。