2009-07-29 19 views
5

Я понимаю, что, задав этот вопрос, я мог бы начать апокалипсис, но мой коллега использует много встроенных кодировок на своих страницах aspx, где, как я предпочитаю использовать кода позади.ASP.NET - Inline vs. Code-Behind

Есть ли здесь право и неправильный способ?

+0

контратип HTTP : //stackoverflow.com/questions/702343/ondatabinding-vs-inline-pros-cons-and-overhead –

+0

Да, Келси указал на это. Хотя и не совсем то же самое, я ищу, если есть правильный способ делать вещи, в основном для проекта, над которым мы собираемся начать работу. – LiamGu

ответ

5

Если только ваш стандарт кодирования не говорит иначе.

IMO code-behind помогает разделить проблемы, поэтому я предпочитаю это, но иногда просто иметь дело с одним файлом тоже приятно.

5

Code-behind является более традиционным и логичным местом. Если он работает, он работает, но я не могу этого сделать в aspx.

+1

Я знаю, что вы имеете в виду, встроенный мне крик Classic ASP. Единственная проблема с использованием кода, который у меня есть, это то, что я не могу наследовать другую страницу. По крайней мере, я так не думаю. Принимая во внимание, что аргументы моих коллег могут наследовать страницу и использовать встроенный код, который решает эту проблему. Эта дискуссия была введена через эту самую проблему. – LiamGu

+0

Я думаю, что asp.net MVC возвращается к inlining, в некоторой степени. История повторяется. – shahkalpesh

1

Я сделал точную запись некоторое время назад:

OnDataBinding vs Inline: pros, cons and overhead

Я предпочитаю код позади. Обычно у меня есть область #region для всех данных для привязки данных. Это позволяет людям, умеющим работать с HTML/CSS, настраивать HTML, и все, что им нужно знать, - это то, какие базовые элементы управления использовать и определять событие OnDataBinding в определении элемента управления. Они могут перемещать вещи и делать что угодно и не знают, что они на самом деле берут, чтобы получить данные в эту привязку данных, поскольку это может быть не так просто, как просто базовый «Eval» («что-то»).

+0

А я этого не видел. Извините за эффективную двойную почту. – LiamGu

+0

Поиск не всегда вызывает дублирование, я сделал это и в прошлом;) – Kelsey

0

Нет ни правого, ни неправильного в этом отношении.

Вы можете написать код в строке &, некоторые из них должны быть написаны с кодом. Это не может быть абсолютным. Зависит от того, насколько легко читается/поддерживается, когда вы пишете его с другой стороны.

EDIT: Как сказано, напишите код для человека & кстати для компилятора.

0

Я, как правило, использую код, потому что это единственный способ для WPF, и я стараюсь оставаться постоянным, и он чувствует себя более естественным. Но это субъективно.

1

Ну, есть встроенный код, а затем есть встроенный код. Если у вас есть блок сценария наверху для вас page_load, все в порядке. Но если вы смешиваете много пчелиных укусов (<% %>) с разметкой, у вас начнут возникать проблемы, когда эти пчелы не работают так, как вам хотелось бы, с другими элементами управления сервером.

1

Лично я предпочитаю компиляцию ошибок во время выполнения ошибок, поэтому я поместил всю свою логику в код позади.

Иногда, когда мне просто нужно значение, которое нужно показать на странице, я поставлю <% = SomeValue%>, но даже тогда я предпочитаю создавать ярлык и устанавливать его.

1

Я хочу, чтобы убедиться, что я понимаю, вопрос - по рядный, вы имеете в виду фрагменты, как

<a><% some.asp.net.code %></a> 

или вы имеете в виду один vs. два файла для каждой страницы:

page.aspx 
page.aspx.cs 

?

Потому что я не поклонник того, что я называю «встроенный» код в первом примере, но я предпочитаю код и разметку в том же файле с < сценария RUNAT = «сервер»>

+0

Встроенный код для меня - это