web-dev-qa-db-ja.com

ASP.NETアプリケーションを再コンパイルせずにリソースファイルを編集する

展開後にリソースファイルを編集可能にしたいのですが。これが可能であることを示唆する this の投稿を読みましたが、これを有効にするためにどの設定を変更する必要があるのか​​理解できません。

App_GlobalResourcesフォルダーをASP.NET 3.5 "Webアプリケーション"に追加し、このフォルダーにリソースファイルを追加しました。このファイルのビルドアクションを変更する必要があると思いますが、ビルドアクションを何に変更しても、上記の機能は実現できません。

App_GlobalResourcesフォルダーとリソースファイルがbinディレクトリにコピーされます。展開すると、.resxファイルへの編集は表示されません。

何か案は?

26
deckerdev

Webアプリケーションプロジェクトは、Webサイトプロジェクトとは異なります。 Webアプリケーションプロジェクトで、あなたが望むことを達成できるとは思えません。あなたはこの投稿をチェックするかもしれません:

ASP.NET WebサイトまたはASP.NET Webアプリケーション?

リソースは通常、静的であることを意味します。これらは、プログラムが使用し、存在することに依存できる画像、文字列、ファイルなどのアイテムです(したがって、文字列/ RESXファイルの場合は強く入力できます)。リソースを使用する理由は、単にリソースをDLLにバンドルして、リソースの配布と参照がはるかに簡単になるようにするためです。

実行時に編集可能であることは、プロジェクトまたはユーザー設定、あるいはデータベースを使用することをお勧めしますか? RESXファイルを使用する必要がある場合は、ファイルを読み書きするためのコードを作成する必要があります。

12
womp

あなたはこれを達成することができます、そして私はそれをやっただけです。

プロジェクト内のリソースファイルを選択します。ビルドアクションをコンテンツに変更します。 [出力ディレクトリにコピー]設定がオフになっていることを確認します。プロジェクトをデプロイすると、App_GlobalResourcesディレクトリと.resxファイルがWebサイトのルートにコピーされます。 .resxファイルを変更すると、ライブサイトが変更を認識します。

26
Mike Cole