2011-03-25 51 views
3
if (!advertismentsDao.AdvertisementUrlExist(ad.Url)) 
{ 
    if (!advertismentsDao.AdvertisementExist(ad.Price, 
              ad.HollidayDuration, 
              ad.Name, 
              ad.Description, 
              ad.City, 
              ad.Area, 
              ad.Country, 
              ad.Agency)) 
    { 
     advertismentsDao.Save(ad); 
     advertismentsDao.CommitChanges(); 
    } 
} 

的顶部给我:无法评估表达式,因为代码被优化或天然帧是在调用堆栈

的InnerException =无法评估 表达,因为代码是 优化或本机帧位于调用堆栈的顶层 。

错误是我在这里CommitChanges()。我谷歌,但我不能解决我的问题

回答

8

我怀疑这不是实际上内部异常 - 我怀疑这正是调试器显示你当你试图检查异常。

将一个完整的堆栈跟踪转储到日志,而应该给真正的异常,然后应该明确为什么提交失败。

2

它是由于ThreadAbortException引起的。只需在代码块的末尾使用下面的代码即可。它可能会解决你的问题。

/* 

catch (System.Threading.ThreadAbortException) 
{ } 

*/ 
相关问题