2010-08-28 3 views
2

Я знаю, что вопрос немного субъективен, но часто существует консенсус относительно того, следует ли избегать стиля или считаться безвредным.При написании ASPX нецелесообразно использовать html в самом aspx?

У меня есть элементы фактического HTML, смешанного с большим количеством моей разметки ASP.NET. Я не знаю достаточно о том, что происходит в фоновом режиме, чтобы определить, следует ли это избегать или если это безопасно.

Недавно я прочитал, что все элементы стиля должны быть исключены из файлов ASPX и отнесены к CSS; это кажется мудрым по целому ряду причин.

Мне интересно, должен ли HTML-код заменяться соответствующим ASP, поскольку его сложнее контролировать из кода позади, или, возможно, рекомендуется поместить фактический HTML-код, поскольку он менее подходит, когда страница отображается ,

ответ

3

Когда asp.net компилятор анализирует ваши .aspx файлы, он преобразует все, что это уже не является runat="server" контроль в <asp:literal> управления, чтобы он мог построить код (будь то в C# или vb.net) из разметки, который генерирует страницу ,

В конечном счете, вероятно, очень мало различий в производительности, но если у вас нет причин манипулировать определенным элементом из вашего кода, вероятно, имеет смысл оставить его «чистым» HTML, для удобства чтения, если ничего другого.

2

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

+1

как asp.net-компилятор преобразует всю не-серверную разметку в '', производительность рендеринга практически такая же, независимо от того, сделаете ли вы это самостоятельно (путем превращения' div' в 'runat =" server " , например) или пусть компилятор сделает это за вас =) – Rob

+0

нормально, не знал этого, спасибо. – Alexan

1

Мне нравится поддерживать HTML только HTML, чтобы в будущем кто-то еще смотрел на мой код, какие элементы потенциально могут ссылаться на логику на стороне сервера, без необходимости сравнивать код за файлами с страницами .aspx, чтобы увидеть, что используется на стороне сервера или нет.

Таким образом, кто-то может легко сказать, глядя на «дизайн» страницы, какие элементы обрабатываются на задней панели. В любом случае, как отметил, вероятно, не большая разница в производительности, но более хорошая практика ИМО.

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