2017-02-23 37 views
0

每次我在Akka.NET中創建一個新類型的對象時。這種類型的全部期刊被加載在構造Akka.net - 每次創建新對象時加載所有日誌數據

我的測試:

[Test, Category("Integration")] 
     public async Task Should_Persist_Actor() 
     { 
      var model = Mocks.Fake.Contact(); 

      await Actors.ContactActor.Ask(new CreateContactCommand(model, "unit test", DateTime.Now)); 
      var context = new MyTestContext("xxx"); 
      using (context) 
      { 
       var found = context.Set<Contact>().FirstOrDefault(x => x.Id == model.Id); 
       Assert.IsNotNull(found); 
      } 
     } 

這是一個不斷擊中,一次在雜誌

public sealed class CreateContactCommand : AuditCommandBase<Contact, CreateContactEvent>, ICommand<Contact, CreateContactEvent> 
    { 
     private readonly ILogger _logger = LogManager.GetCurrentClassLogger(); 
     public CreateContactCommand(Contact obj, string auditUser, DateTime auditTime) : base(obj, auditUser, auditTime) 
     { 
      // This gets hit for everything in the journal db 
      _logger.Debug("Create Contact Command Ctor"); 
     } 
    } 

每個條目如果我的構造截斷我的測試馬上傳出的日誌。如果日誌中有數據,它會打印每個項目的類型構造函數...

回答

0

這是按預期工作的。當你把一個阿卡人演員在線時,它會通過重播事件日誌來恢復它的狀態。

+0

所以你說的是因爲我在單元測試中,設置每次都重新啓動akka,因此所有數據都必須返回到內存存儲中? – KenL

相關問題