私はslowcheetahで何かが欠けているに違いないと思います。新しいasp.netmvc3アプリケーションを作成しました。デフォルト値でweb.configに1つのappsettingを追加しました。次に、デバッグ構成ファイルとリリース構成ファイルのそれぞれに1つの変換を追加しました。この値を読み込むビューも作成しました。変換をプレビューすると、変換は正常に機能します。私の理解では、プロジェクトをリリースモードで実行すると、プロジェクトはリリーストランスフォーメーションからアプリ設定を読み込み、デバッグモードでプロジェクトを実行すると、デバッグ構成からアプリ設定を読み込みます。
これがweb.configの関連部分です
<appSettings>
<add key="cheetah_val" value="default_val"/>
</appSettings>
これがweb.debug.configです
<?xml version="1.0"?>
<configuration xmlns:xdt="http://schemas.microsoft.com/XML-Document-Transform">
<appSettings>
<add key="cheetah_val" value="debug_val" xdt:Transform="Replace" xdt:Locator="Match(key)"/>
</appSettings>
<system.web>
</system.web>
</configuration>
これがweb.release.configです
<?xml version="1.0"?>
<configuration xmlns:xdt="http://schemas.microsoft.com/XML-Document-Transform">
<appSettings>
<add key="cheetah_val" value="release_val" xdt:Transform="Replace" xdt:Locator="Match(key)"/>
</appSettings>
<system.web>
<compilation xdt:Transform="RemoveAttributes(debug)" />
</system.web>
</configuration>
HomeController.cs
public class HomeController : Controller
{
public ActionResult Index()
{
ViewBag.CheetahMessage = System.Configuration.ConfigurationManager.AppSettings["cheetah_val"];
return View();
}
}
そしてindex.cshtml
@{
ViewBag.Title = "Home Page";
}
<h2>@ViewBag.CheetahMessage</h2>
出力は、リリースモードではrelease_val、デバッグモードではdebug_valになると思います。私は何が間違っているのですか?それとも私は何か重要なものを見逃していますか?Webサイトの場合、F5機能は機能しませんか?Webサイトの場合、変換を機能させるために実際にこれを公開する必要がありますか?