2
我將實體框架和ASP.NET動態數據合併到一個現有的應用程序中,該應用程序在web.config中使用模擬=「true」,但是之前的開發人員選擇了一種方法,對每個DAL調用的應用程序池的身份,他們做出實體框架和模擬
private WindowsImpersonationContext context = null;
public void RevertToAppPool()
{
if (!WindowsIdentity.GetCurrent().IsSystem)
{
context = WindowsIdentity.Impersonate(System.IntPtr.Zero);
}
}
public void UndoImpersonation()
{
if (context != null)
{
context.Undo();
}
}
我一直在問,而使用實體框架保持這種行爲......鑑於實體對象被用於所有的地方(在LINQ to EF查詢,手動調用,框架後臺調用等),那麼在哪些地方可以在分部類中對每個調用進行適當的RevertToAppPool和UndoImpersonation調用?
會調用上下文類的OnContextCreated中的RevertToAppPool,並重寫Dispose來調用UndoImpersonation是一個合適的解決方案嗎?我無法從我的唉聲中測試這個。 – manning18