2011-01-30 2 views
5

Этот код работает в Razor Просмотров но не работает внутри пользовательских хелперов тела и в _Layout.cshtml: сообщениеЛокальные переменные не работают в бритве Помощники

@{ var v = "foo"; } 
@v 

Ошибка: «Элемент v не существует текущий контекст»

Я использую только что скачал Visual Web Developer Express 2010.

кто-нибудь может объяснить такое поведение?

ответ

7

Этот код отлично подходит для обоих видов и _layout.cshtml. И насколько помощники обеспокоены здесь синтаксис:

@helper MyHelper() 
{ 
    var v = "foo"; 
    @v  
} 
@MyHelper() 

Это, как говорится объявления локальных переменных и писать C# код в представлениях следует избегать.

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