In a typical MCV project, for debuging Entity Framework I'd have something like
using (var context = new BlogContext())
{
context.Database.Log = s => Debug.WriteLine(s);
//generated sql is now in output window
}
It looks like asp net zero is making my life easier by using a repository pattern. What is the new and improved way to get access to the raw sql that EF is running?
This is the solution;
using System.Diagnostics;
using System.Web.Mvc;
using Abp.Domain.Repositories;
using Abp.EntityFramework.Repositories;
namespace AspNetZero.WebSite.Web.Controllers
{
public class MyController : WebSiteControllerBase
{
private readonly IRepository<MyEntity> _myEntityRepository;
public MyController(IRepository<MyEntity> myEntityRepository)
{
myEntityRepository.GetDbContext().Database.Log = s => Debug.WriteLine(s);
}
}
}