В Entity Framework 6 можно просмотреть SQL, который будет выполнен для вставки, прежде чем вызывать SaveChanges?
using (var db = new StuffEntities()){
db.Things.Add(new Thing({...});
//can I get the SQL insert statement at this point?
db.SaveChanges();
}
Я знаком с тем, как получить сгенерированный SQL для запроса до выполнения следующим образом:
var query = db.Thing.Where(x => x.ID == 9);
Console.WriteLine(query.ToString());
//this prints the SQL select statement
Запрос возвращает IQueryable < > , тогда как вставка возвращает DbSet и вызов ToString на DbSet просто печатает стандартное имя объекта.