非常に特定のページでこの問題が発生しており、修正方法がわかりません。 私はすでにいくつかの質問(例えばASP.NET corrupt assembly "Could not load file or assembly App_Web_*"とCould not load file or assembly App_Web_xxxxxxxx or one of its dependenciesなど)を見つけて解決策を試しましたが、役に立たなかった。要約するとプリコンパイル済みのASP.NET WebサイトプロジェクトでファイルまたはアセンブリApp_Web_ *をロードできませんでした
、ここで私が試したものです:
設定
batch="false" numRecompilesBeforeAppRestart="50"
web.configファイルにこのウェブサイトASPをクリア
をホストするIIS Webサイトを再起動。 NETテンポラリファイル
%windir%\Framework64\v4.0.30319\Temporary ASP.NET Files
リプレイド
...上記のいずれかの組み合わせであっても、役に立たない。私はVSからサイトを実行しようとすると、事前コンパイルせずにWebサイトを展開するときに完全に正常に動作します。ここで
は的環境のいくつかの仕様です:
プリコンパイルは、Web配置プロジェクトを介して行われます。 TFSまたは私はプリコンパイルをしたかは関係ありません:パイプラインモードは、.NET 4.0
に統合されています。問題が解決しないバージョンが4.0.30319
アプリケーションプールの設定がされて
.NETこれは私がCustomer.aspx
を開いたときに発生する特定のエラー、次のとおりです。
Could not load file or assembly 'App_Web_qxcfa0wv, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null' or one of its dependencies. The system cannot find the file specified.
このページではUserManagement.ascx
というコントロールが登録されており、~/Controls/UserManagement.ascx
にあります。
このコントロールには、~/Controls/Dialogs/UserControl.ascx
にあるUserDialog.ascx
という別のコントロールが登録されています。
最後のコントロールは、ユーザーのデータをカプセル化する~/Controls/User.ascx
というコントロールを使用します。それ以上の依存関係はありません。
スタックトレースによれば、エラーはUserDialog.ascx
(<%@ Control ... %>
ディレクティブ)の1行目にあります。
私は迷っています。私のの推測は、~/Controls/Dialogs/UserDialog.ascx
が親フォルダにあるコントロールを必要とするため、動作しないということです。その結果、実行時にいくつかの古い参照が発生します。最初のSO質問の問題記述のようなもの。
~/Controls/User.ascx
コントロールを除外することでテストすることはできません。そのコントロールが他のコントロールも登録していないにもかかわらず、~/Control/UserDialog.ascx
で使用される別のコントロールで循環参照エラーが発生するためです。ほとんどの他のコントロールではがである名前空間登録のみです。
私は循環参照とエラーが関連していると言いたいと思いますが、どういう意味があるのでしょうか。依存グラフ全体を描画する必要はありません。
アイデア?
ありがとうございます!
は '〜/コントロールを/'ず、かつ/または '〜/Controls/Dialogs/'ディレクトリがサーバ上に存在しますか? – robertc
@robertc:うーん、私はそれをチェックしなかった。どうやら、 '〜/ Controls /'フォルダは存在しますが、 '〜/ Controls/Dialogs /'フォルダは存在しません。奇妙なのは '〜/ Controls/Lists /'フォルダー*が存在するからですが、それが構築された唯一の理由はASPXページが入っているからです。 VS2010では '〜/ Controls/Dialogs /'フォルダにはASCXファイルしか含まれていないので、なぜビルドには含まれていないのか分かります... – user849924
[私の似た質問]を見てください(http://stackoverflow.com/questions/5885534)。/asp-net-user-controls-in-a-child-directory-directory-not-found-error) - 'ascx'ファイルのみを含む各ディレクトリに空の' placeholder.html'ファイルを作成しました。ディレクトリーはサーバー上に作成されます。 – robertc