我從Visual Studio項目調用存儲過程並傳遞DateTime參數。如何將DateTime對象設置爲null並將其作爲參數發送給存儲過程?
下面是C#代碼:
DateTime? dtStartFrom = null;
var result = _context.Database.SqlQuery<DamageEventsDTL>("SPDamageEventsDTL @dtStartFrom", new SqlParameter("dtStartFrom", dtStartFrom)).ToList();
在這裏,在存儲過程中如何變量定義:
@dtStartFrom date
該行我得到這個異常:
The parameterized query '(@dtStartFrom nvarchar(4000))SPDamageEventsDTL @dtStartFrom' expects the parameter '@dtStartFrom', which was not supplied.
所以我想有是空值的問題,所以我嘗試這種方式:
DateTime? dtStartFrom = DBNull.Value;
但在行上方我得到這個錯誤:
Cannot implicitly convert type 'System.DBNull' to 'System.DateTime?'
任何想法,我怎麼可以設置DateTime對象爲null,並將其作爲參數來我的存儲過程?
你試過命名的SqlParameter @dtStartFrom而不只是dtStartFrom? –