這是在煩我。一些非常簡單的東西,它不起作用。我可能做錯了什麼?如何使用C#從SQL Server獲取電子郵件
這裏是我使用的代碼...
string strSQL = "SELECT ac.ContactEmail AS fldEmail FROM vwApprenticeshipContactDetails ac WHERE (ac.ApprenticeshipID = @ApprenticeshipID)";
SqlCommand cmd2 = new SqlCommand(strSQL, cnn);
cmd2.Parameters.Add("@ApprenticeshipID", SqlDbType.Int).Value = wsAppID;
Object fldEmail = cmd2.ExecuteScalar();
不管你信不信,上述回報率看起來像一個數組,當我調試,並期待在「fldEmail」的值。換句話說,它是空的,沒有任何東西或空值(不能告訴輸出窗口顯示數組)。我已經直接在SQL服務器上運行了,並且我的電子郵件顯示正常。數據庫字段中的'@'字符是否會導致某些內容?
我期待的電子郵件是'[email protected]',這對我來說看起來很好。
UPDATE
我更換了ContactEmail場以上,從數據庫中另一列名和它回來的罰款。不知道爲什麼電子郵件是一個問題。這裏的數據類型是VARCHAR(50)
。
UPDATE
在調試模式下,我注意到它返回system.DBNull
數據類型(和更深的挖掘,它返回空),但是爲什麼呢?我用SQL服務器中的正確參數運行完全相同的查詢,並收到一封電子郵件。奇怪的
謝謝
提示!在執行之前調試cmd2並查看CommandText的值。嘗試在數據庫中運行該查詢字符串。 – voddy
@voddy沒有什麼不尋常的。顯示的SQL與上面相同。 – Fandango68
雅怪。嘗試選擇*並查看電子郵件地址是否返回。 – voddy