【发布时间】:2013-09-13 13:04:20
【问题描述】:
我正在做单元测试,我做了一个测试来测试以下方法:
public void DeleteTransport(int id)
{ SqlConnection sqlConnection = new SqlConnection(SQL_CONN); try { sqlConnection.Open(); SqlCommand dbCommand = sqlConnection.CreateCommand(); dbCommand.CommandText = string.Format("DELETE FROM dbo.Transports WHERE ID={0}", id); SqlDataAdapter dap = new SqlDataAdapter(dbCommand); var ds = new DataSet("Transports"); dap.Fill(ds); } finally { sqlConnection.Close(); } }
在单元测试中,我给出了一个不存在的 id 作为参数,但该方法没有抛出 SqlException。
id不存在如何抛出异常?
我正在使用:
- Visual Studio 2012
- TFS
- Sql Server 2008
【问题讨论】:
-
没有异常情况,也不例外。执行该语句后,Transports 中没有具有请求 ID 的记录。
-
你为什么首先使用 DataSet 和 SqlDataAdapter?为什么不直接调用 ExecuteNonQuery 看看结果如何?
标签: c# sql sql-server database unit-testing