我在C#程序中有这个错误
public bool Delete(ref ENTValidationErrors validationErrors, int userAccountId)
{
if (DBAction == DBActionEnum.Delete)
{
// Begin database transaction
using (TransactionScope ts = new TransactionScope())
{
// Create data context
using (BMSDataContext db = new BMSDataContext())
{
this.Delete(db, ref validationErrors, userAccountId);
if (validationErrors.Count == 0)
{
//Commit transaction since the delete was successful
ts.Complete();
return true;
}
else
{
return false;
}
}
}
}
else
{
throw new Exception("DBAction not delete.");
}
}错误发生在第二个“使用语句”上。它说,在使用语句时使用的'BMS_DAL.BMSDataContext类型必须隐式转换为"System.IDisposable"'。
这里肯定出什么问题了?
发布于 2012-08-30 19:48:52
错误指定BMSDataContext不实现IDisposable,而using语句需要这样做的类型。
取出第二个using语句,用new替换它。
或者,如果需要,可以在IDisposable上实现BMSDataContext。您可以阅读This Post,这可能帮助您决定是否需要实现它。
发布于 2015-04-14 08:06:40
使用语句添加System.Data.Linq
using System.Data.Linq;https://stackoverflow.com/questions/12204069
复制相似问题