尝试编译此代码时出现语法错误,我不太确定原因。任何人都可以帮助我修复此代码吗?
DateTime? ModifiedDate = null;
ModifiedDate = (dbReader["ModifiedDate"] == DBNull.Value ? null : DateTime.Parse(dbReader['ModifiedDate'].ToString()));
尝试编译此代码时出现语法错误,我不太确定原因。任何人都可以帮助我修复此代码吗?
DateTime? ModifiedDate = null;
ModifiedDate = (dbReader["ModifiedDate"] == DBNull.Value ? null : DateTime.Parse(dbReader['ModifiedDate'].ToString()));
当涉及到条件运算符时,条件的两边都应该返回相同的类型(或者可以隐式转换的类型)。
Nownull
不是特定类型,这是问题的一部分-您需要将其强制转换为DateTime?
以便匹配另一侧-这还有另一个问题:您使用'
的是"
.
以下将起作用:
DateTime? ModifiedDate =
dbReader["ModifiedDate"] == DBNull.Value ?
(DateTime?)null :
DateTime.Parse(dbReader["ModifiedDate"].ToString());
DateTime? ModifiedDate = dbReader["ModifiedDate"] == DBNull.Value ? (DateTime?)null : DateTime.Parse(dbReader["ModifiedDate"].ToString());
您不小心使用了字符分隔符而不是字符串分隔符。上面是固定的。