相关疑难解决方法(0)

如何模拟Entity Framework 6异步方法?

我是嘲笑的新手.我想模拟我的基础存储库,它依赖于Entity Framework 6 DbContext但是我失败了.我在Google搜索了很多但没有得到任何足够的结果.最后我得到了一个使用异步查询进行测试的示例,并尝试关注但它对我有用.

这是我的代码:

DbContext:

public class TimeSketchContext : DbContext
{
    public virtual DbSet<EmployeeSkill> EmployeeSkill { get; set; }
}
Run Code Online (Sandbox Code Playgroud)

基础知识库:

public class BaseRepository<T> : IRepositoryBase<T> where T : class, IEntity, new()
{
    protected readonly DbContext InnerDbContext;
    protected DbSet<T> InnerDbSet;

    public BaseRepository(DbContext innerDbContext)
    {
        InnerDbContext = innerDbContext;
        InnerDbSet = InnerDbContext.Set<T>();
    }

    public virtual Task<T> FindAsync(long id)
    {
        return InnerDbSet.FirstOrDefaultAsync(x=>x.Id == id);
    }
Run Code Online (Sandbox Code Playgroud)

}

测试:

    [Fact]
    public async Task DbTest()
    {
        var dummyData = GetEmployeeSkills();
        var …
Run Code Online (Sandbox Code Playgroud)

.net c# unit-testing entity-framework moq

7
推荐指数
1
解决办法
7923
查看次数

标签 统计

.net ×1

c# ×1

entity-framework ×1

moq ×1

unit-testing ×1