したがって、多くの調査の結果、<identity impersonate=true>はApplication_Startイベントが発生した後にのみ機能するようです。
誰かがこの問題の回避策を知っていますか?アプリケーションを最初に起動したときにデータベースを作成する必要があるアプリケーションがあります。IIS Webサイトを実行しているユーザーには、APP_POOLユーザーには特にない方法で実行するための適切なアクセス許可があります。
私の現在のHACKソリューションは(疑似コード)を置くことです
static bool AppInitialized = false;
void Session_Start() {
if (!AppInitialized) {
AppInitialized=true;
InitializeApp();
}
}
impersonate = trueは、特定のセッションが開始されるまでに「有効」になります。これは機能しますが、基本的にApplication_Startイベントの動作を再作成しているため、ばかげているように見えます。この問題にはもっと洗練された解決策がなければならないようです-違いますか?