編集:タイトルを変更し、更新を追加しました。
更新: これが64ビットと32ビットの問題であるとはもはや考えていません。これを見たのは、農場政策で「フルコントロール」として設定された人々だけであることがわかりました。(システムアカウントとして機能していません)通常のユーザーをテストしたところ、問題のあるユーザーは誰もいませんでした。「問題のある」ユーザーをファームポリシーから削除して追加し直し、1人のユーザー(他の開発者:))を除くすべてのユーザーを修正しました。
2つの32ビットWFEと32ビットアプリケーションサーバーを使用してファームを開始しました。ファームに64ビットフロントエンドを追加することを決定しました。ほとんどの場合、ほとんどすべてが正常に機能しました。例外は、ユーザープロファイルデータベースにアクセスするカスタムWebパーツです。32ビットフロントエンドでは正常に動作しますが、64ビットフロントエンドでは次のエラーが発生します。
User Not Found:データベースからプロファイルデータを読み込めませんでした。
説明:現在のWebリクエストの実行中に未処理の例外が発生しました。エラーとエラーがコードのどこで発生したかについての詳細は、スタックトレースを確認してください。
例外の詳細:Microsoft.Office.Server.UserProfiles.UserNotFoundException:ユーザーが見つかりません:データベースからプロファイルデータを読み込めませんでした。
ソースエラー:
現在のWebリクエストの実行中に、未処理の例外が生成されました。例外の発生源と場所に関する情報は、以下の例外スタックトレースを使用して識別できます。
スタックトレース:
[UserNotFoundException:User Not Found:データベースからプロファイルデータを読み込めませんでした。]
Microsoft.Office.Server.UserProfiles.UserProfile.Load(SqlDataReader myReader、Boolean bFirstRead、Boolean bWssId)+930Microsoft.Office.Server.UserProfiles.UserProfile
。 Load(SqlDataReader myReader)+64
Microsoft.Office.Server.UserProfiles.UserProfile.RetrieveUser(String strAcct、Guid gAcct、Byte [] bSid、Nullable`1 recordId、Boolean doNotResolveToMasterAccount)+1507Microsoft.Office.Server.UserProfiles.UserProfile
。 .ctor(UserProfileManager objManager、String strAcct、Boolean doNotResolveToMasterAccount、Boolean forceUserIsSelf)+584
Microsoft.Office.Server.UserProfiles.UserProfile..ctor(UserProfileManager objManager、String strAcct)+80
Microsoft.Office.Server.UserProfiles.UserProfileManager.GetUserProfile(String strAccountName)+205
WFEは同じファーム上にあるため、同じデータベースを参照する必要があります。
さらに情報が必要な場合はお知らせください。
任意のアイデアをいただければ幸いです!
ありがとう。