proplem是我在dbcontext中向表中插入一行,但该行未插入数据库。
首先,我认为我的代码没有运行,但是当我使用单元测试[见图片]时,测试用例PostCategory_Repository_Create
被传递,这意味着插入了数据,并返回Id
& #34; 1&#34 ;.然后我再次运行该测试用例,Id
变为" 2" (这是因为" Id"字段是标识)。
但数据刚刚在dbcontext上更新,而不是在数据库中......为什么?
拜托,非常感谢。
答案 0 :(得分:0)
这是UniOfWork类的代码,我使用存储库设计模式:
public class UnitOfWork : IUnitOfWork
{
private readonly IDbFactory dbFactory;
private ShopDbContext dbContext;
public UnitOfWork(IDbFactory dbFactory)
{
this.dbFactory = dbFactory;
}
public ShopDbContext DbContext
{
get { return dbContext ?? (dbContext = dbFactory.Init()); }
}
public void Commit()
{
DbContext.SaveChanges();
}
}