Ho il seguente codice in un test:Come evitare maniglia di sicurezza è stato chiuso
private void LoadIncomeStatementViewModel()
{
using (var evt = new AutoResetEvent(false))
{
EventHandler handler = (sender, e) => evt.Set();
_incomeStatementViewModel.Loaded -= handler;
_incomeStatementViewModel.Loaded += handler;
_incomeStatementViewModel.LoadDataCommand.Execute(null);
evt.WaitOne();
}
}
Ora, se ho eseguito il seguente test
[Test]
public void Test()
{
LoadIncomeStatementViewModel();
// do something
LoadIncomeStatementViewModel();
// do something
}
La seconda volta la LoadIncomeStatementViewModel() viene chiamato Viene visualizzato un messaggio di errore "L'handle di sicurezza è stato eliminato" a EventHandler handler = (sender, e) => evt.Set();
Sicuramente l'istruzione using ha reinizializzato evt quando il metodo viene rieseguito la seconda volta. Ho la sensazione che questo potrebbe essere qualcosa a che fare con il Runner Test Resharper (Nunit 2.7) ....
Qualche idea su come aggirare questo?
Grazie Jeremy
Questo ha risolto il mio problema, grazie! – joerage