さらに調査した結果、この動作の背後にある理由と回避策を見つけたと思います。
また、元の質問で説明されている動作は、ソリューションの直下またはソリューションの直下にあるフォルダーに追加されたファイルに対してのみ発生することにも注意してください。
理由
以下が 100% 正しいかどうかはわかりませんが、主なポイントは、Word (およびおそらく他の MS Office アプリも) が既存のファイルを保存する方法です。
- 現在のバージョンのファイルを一時ファイルに保存します
- 元のファイルの名前を変更して、何か問題が発生した場合に後で使用できるようにします
- 元のファイルの名前を使用して、一時ファイルを元のファイルの場所にコピーします。
- 元のファイル (手順 2 で名前を変更したファイル) を削除します。
Visual Studio は、ファイルが存在しないことを (非常に短い時間ですが) 検出し、ツリーと .sln ファイルから削除します。これは、任意の種類のファイルを手動で追加し、チェックアウト (チェックアウトされていない場合)、別の名前に名前を変更してから元の名前に戻すことによっても再現できます => ファイルは Visual Studio に表示されなくなります。
回避策
Microsoft のサイトの手順に従って、空のプロジェクト テンプレートを作成しました。また、静的メイン メソッドが存在しない場合でもプロジェクトがコンパイルされるように、出力を「クラス ライブラリ」に設定しました。このテンプレートを使用して、「ドキュメント」プロジェクトを既存のソリューションに追加できます。このプロジェクトの下で、必要に応じてファイルを追加して編集できます。これは、Visual Studio の動作が異なり、このコンスタレーションに保存されたファイルが削除されないためです。
明らかに、このアプローチはまだあまり満足できるものでもエレガントなものでもありませんが、同じ問題に遭遇する可能性のある他の人にとって役立つことを願っています.
G.