2010-05-04 2 views
1

Я нашел картину в моих взглядах, как это:ASP.NET MVC: ярлык для Response.Write и String.Format

<% if (someCondition) 
    { 
     Response.Write(string.Format("Foo {0}, Bar {1} Baz {2}.", userName, someCounter, someDate)); } 
    else 
    { 
     Response.Write(string.Format("Foo is {0}.", bar)); 
    } 
%> 

Основной узор if...else с кучей повторяющихся Response.Write(string.Format()) для каждого условия , Идея здесь заключается не в повторном использовании в тех случаях, когда уместным будет частичный вид или вспомогательный метод, а скорее ярлык, который в идеале будет выглядеть как Response.WriteFormattedString().

Вопрос здесь около DRY и Response.Write(string.Format()). Есть ли лучшие или более сжатые способы. Учтите, что HTML кодирование будет хорошая возможность включать, возможно, как логическое значение на вызов метода какого-либо метода вида (расширение на Html?.

Цель состоит в том, чтобы попытаться избежать многократного рендеринга блоков <%: %> и <%= %>.

существует очевидный метод расширения, что я пропускаю? у вас есть метод расширения, что вы полагаетесь на достижение этой функциональности?

ответ

3
<%: Html.Greeting(Model) %> 

... Где Html.Greeting это метод вы пишете, который принимает ваш модель страницы

Смежные вопросы