2012-02-01 3 views
3

のVisual Studioで選択された構成に基づいて、ASPXページ(背後ではないコード)のHTML/ASPの部分を生成するための許容可能な方法はありますか?例えば、私は私の開発のランディングページ(彼らは開発を見ているユーザーに通知ヘッダ)、およびプロダクションビルドの異なるグラフィックの異なるヘッダーグラフィックスを表示します。SlowChetahのような変容?

私は私の最初の考えは、ASPXページのようなものを使用していた、私の設定ファイルを変換するためのSlowChetahを使用しますが、私は機能性や機能のその種に関するあらゆる情報を見つけていません。

答えて

1

Accessing Visual Studio or other Hosts from a T4 Text Templateの下部に記載されているようにこれは、現在のビルド構成を取得し、ASPXの必要な部分を生成するために、DTEオブジェクトと組み合わせてT4 text templatesを使用して達成することができる:

<#@ template hostspecific="true" #> 
<#@ output extension=".aspx" #> 
<#@ assembly name="EnvDTE" #> 
<#@ import namespace="EnvDTE" #> 
<# 
// Get the environment object 
IServiceProvider serviceProvider = (IServiceProvider)Host; 
DTE dte = serviceProvider.GetService(typeof(DTE)) as DTE; 

// Get the active build configuration object 
var activeConfiguration = dte.Solution.SolutionBuild.ActiveConfiguration; 

// Generate customized ASPX content 
if (activeConfiguration.Name == "Debug") 
{ 
#> 

<h1>Debug</h1> 

<# 
} 
else 
{ 
#> 

<h1>Release</h1> 

<# 
} 
#> 

出力テンプレートの実際のASPXページに含めることができます。 Literal制御を介して、またはユーザーコントロールとして。

関連する問題