「CodeFile」属性は「Inherits」属性なしでは使用できません

Aug 22 2020

この問題に関してこのサイトには2つの関連する質問がありますが、どれも詳細に説明したり、役立つことが証明された解決策を提供したりしていないようです。彼らです:

  • 'CodeFile'属性は 'Inherits'属性なしでは使用できません
  • ASP.NET CodeFile、CodeBehindおよびInherits

これがどのタイプのプロジェクトであるかはわかりません。ASPWebFormsまたはASPWebSiteのいずれかであると思います。ここにいるもっと照らされた人が正しい質問をしてそれを理解するかもしれません、私はそれをいただければ幸いです。

とにかく、この問題は何度も発生しており、何が原因であるのか、過去に何を修正したのか、はっきりとはわかりません。私が確信していることは、私は何時間も何もせずにこの不可解な出力を見つめているだけで役に立たないということです。

毎回、ストーリーは次のようなものです。

  • すべてがうまく、コンパイルされ、すべて機能していますか?素晴らしいですか?(ある種、その古いプロジェクト...)。
  • いくつかの変更を行います。それは期待どおりに機能します。
  • 変更を加えます。その結果、このエラーが発生します。(Git操作が含まれることもありますが、これは私にとって大きな疑いです。)
  • コンパイルを再試行してください。(私たちに言わせてください、それは10のうち9で動作します)
  • しかし、それからその10回目が来て、運がありません。
  • 行う ???そしてそれは動作を開始します(ほとんどの場合、マシンのプロジェクトフォルダのハードバックアップを毎日復元します)

これは苛立たしく、逆効果です。何が原因で何が修正されたのか、はっきりとはわかりません。

どんな助けでも大歓迎です。これは、Visual Studio2019のエラーのスクリーンショットです。

回答

PedroRodrigues Aug 25 2020 at 15:52

それを考え出した。

したがって、ここでの本当の問題は、ファイルをバージョン管理に追加する必要があるWeb.configかどうかです。

はい

もちろん。プロジェクトは正しいWeb.configファイルがないとコンパイルされません。

番号

このWeb.configファイルは環境構成用です(環境変数は非常に古くなっています)。データベースの資格情報などをソース管理に配置しないでください。

ASP

したがって、ASPでの答えは「はい」と「いいえ」です。上記の理由により。これがクレイジーでなければ、私はクレイジーです。

Web.config結局、ファイルは改ざんされていました。私が持っていた;

<system.web>
    <compilation explicit="false" strict="false" targetFramework="4.5.2" debug="true">
    (...)
</system.web>

あるべき場所:

<system.web>
    <compilation explicit="false" strict="false" targetFramework="4.7.2" debug="true">
    (...)
</system.web>

あなたは違いを見つけることができますか?それは簡単ではありません。実際、Visual Studioでさえ、何が悪いのかを理解したり、教えてくれたりすることはできませんでした。しかし、その少し厄介な4.5.2はずだった4.7.2。それは私たちがそれを変えたようではありません。このナンセンスの前はしばらくの間そうだった。

なんて不可解なフレームワーク。