I have a test. What happens is that whenever test1 is executed first, test2 fails with the message:
"System.Data.EntityException : System.Data.EntityException :
the underlying provider failed on open. cannot open database
"DBEntities" requested by the login. The login failed.".
and whenever test2 is executed first, test1 fails with the same message.
I've been at this for the past 3 days.
[TestClass]
class MyTestClass
{
DBEntities db;
[TestInitialize]
public void Initializer()
{
db = new DBEntities();
}
[TestMethod]
public void test1()
{
db.Books.Add(new Book{ ...});
db.SaveChanges();
}
[TestMethod]
public void test2()
{
db.Books.Add(new Book{ ...});
db.SaveChanges();
}
[TestCleanup]
public void Clean()
{
db.Dispose();
}
}
Here's an excerpt of the DBEntities class :
public class DBEntities : DbContext
{
public DbSet<Books> TheBooks{get;set;}
...
}
After running a profiler, I noticed this message:
"Login failed for user. Reason: failed to open the explicitly specified database."
after a lot of lockAcquired
and lockReleased
statements.
See Question&Answers more detail:
os 与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…