Entity Framework Core 抛出的单元测试异常

Ale*_*der 5 unit-testing entity-framework exception in-memory-database

我使用内存数据库来对使用 Entity Framework Core 的方法进行单元测试。

我按如下方式设置数据库上下文:

var builder = new DbContextOptionsBuilder<DatabaseContext>().UseInMemoryDatabase();

var context = new DatabaseContext(builder.Options);
var databaseElements = Enumerable.Range(1, 10)
    .Select(i => new DatabaseElement
    {
        Id = i,
        Name = "Name of Element"
    });
    context.DatabaseElements.AddRange(databaseElements);
    context.SaveChanges();
    _databaseContext = context;
...
Run Code Online (Sandbox Code Playgroud)

我使用这个数据库上下文进行测试。这很好用。

是否可以使用它来引发实体框架异常?

例如,如果我可以测试我的方法是否按预期处理这些异常(例如没有到数据库的连接),那就太好了。