2010-09-08 197 views
1

當使用NHibernate進行單元測試時,我通常會有創建和保存對象的測試,請清除會話(session.Clear()),然後從數據庫中檢索對象。單元測試實體框架

Session.Clear()與EF4相當於什麼?

試驗例:

[Test] 
    public void Can_create_and_save_a_default_account() 
    { 
     var account = new Account(); 

     _db.Accounts.AddObject(account); 
     _db.SaveChanges(); 

     int id = account.AccountId; 

     // clear session 

     var fromDb = _db.Accounts.SingleOrDefault(x => x.AccountId == id); 
     Assert.IsNotNull(fromDb); 
    } 
+0

有關單元測試實體框架的好文章,請參閱http://msdn.microsoft.com/en-us/ff714955.aspx – 2010-09-09 11:57:58

回答

3

,這將是重新創建DataContext派生類(_db你的情況)。

0

你可以用內存數據庫來嘲笑你的遠程數據庫。 Here is example 所以每次測試後你都會從頭開始。