SlowChetah-подобное преобразование для страниц ASPX? - PullRequest
3 голосов
/ 01 февраля 2012

Есть ли приемлемый способ создания HTML / ASP-части страницы ASPX (а не кода позади) на основе конфигурации, выбранной в Visual Studio? Например, я хочу, чтобы на моей целевой странице разработки отображалась другая графика заголовка (заголовок, который уведомляет пользователя, который просматривает разработку), а также другую графику для производственной сборки.

Я использую SlowChetah для преобразования моих конфигурационных файлов, поэтому моей первой мыслью было использовать что-то подобное для страниц ASPX, но я не нашел никакой информации относительно такого рода функциональности или функции.

1 Ответ

1 голос
/ 26 октября 2012

Этого можно достичь, используя текстовые шаблоны T4 в сочетании с объектом DTE, как описано в нижней части Доступ к Visual Studio или другим хостам из текстового шаблона T4 , дляполучить текущую конфигурацию сборки и сгенерировать требуемую часть ASPX:

<#@ 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, или как пользовательуправление.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...