我正忙着一个名为StockRoom的项目,但我遇到了一个问题,我可以解决几天的问题。我使用ASP.NET和MVC的存储库模式,但我的问题是我的IUnitOfWork在调用它时将其保存到数据库中时返回null。
以下是我在IUnitOfwork中使用的代码:
public interface IUnitOfWork : IDisposable
{
ICompanyRepository Companies { get; }
void Commit();
}
存储库:
public interface ICompanyRepository : IRepository<Company>
{
IEnumerable<Company> GetAllCompanies();
}
我称之为IUnitOfWork的控制器和操作:
protected **IUnitOfWork UnitOfWork** { get; private set; }
public ActionResult Create(**Company company**)
{
if (ModelState.IsValid)
{
company.Created = DateTime.Now;
company.Updated = DateTime.Now;
try
{
**UnitOfWork.Companies.Add(company);**
}
catch(Exception e)
{
Debug.Print(""+ e);
}
UnitOfWork.Commit();
return RedirectToAction(nameof(Index));
}
else
{
return View();
}
}
每次当我尝试将公司参数中的属性保存到公司时,UnitOfWork是否返回null?