Предоставляет ли ASP.NET MVC более подходящее решение для независимости от браузера, а не для веб-форм? - PullRequest
1 голос
/ 13 февраля 2012

Надеюсь, этот вопрос не сбивает с толку, но я могу помочь прояснить его, и там - это окончательный ответ: да или нет (и почему, конечно). Я разрабатываю множество внутренних интрасетей приложений с использованием веб-форм ASP.NET, ориентированных на среду Windows и IE. Это позволяет таким вещам, как проверка подлинности Windows и перетаскивать серверные элементы управления ASP.NET, работать очень хорошо, и в центре внимания обычно находится функция, а не pazzaz или внешний вид сайта; Я не продаю продукты здесь в массы.

Однако некоторые пользователи начинают использовать Mac, и, как мы знаем, браузером по умолчанию является Safari. К сожалению, Safari не поддерживает аутентификацию Windows. Чтобы добавить, многие из готовых серверных серверных элементов управления ASP.NET не отображаются должным образом, как в IE. Кроме того, я должен учитывать все различия, которые мне нужны, в моих .js.

Теперь, глядя на это с точки зрения внутреннего бизнеса, наличие единой корпоративной платформы не является редкостью, поэтому допущение, что пользователи используют IE, не является проблемой. Однако, по мере появления большего количества компьютеров Mac, преодоление разрыва, позволяющего сделать эти браузеры веб-приложений независимыми от браузера, может существенно изменить время разработки.

Мне было интересно, есть ли ASP.NET MVC в этом вопросе. Я знаю, что это не решает проблему Windows Authentican (не забывайте об этом и для решений), но мне было интересно, поскольку серверные элементы управления не использовались, как с веб-формами, если использование MVC было выгодным выбором при попытке сделать веб-приложения кросс-браузер совместим? Я не возражаю против использования MVC в отличие от веб-форм, и если есть документально подтвержденные или полученные знания о том, почему MVC лучше работает для кросс-браузерного использования, тогда поговорите с ним. Если опыт показывает, что MVC лучше отображает свои элементы управления в отличие от серверных элементов управления из веб-форм в разных браузерах, это в основном то, что я пытаюсь определить.

Кто-нибудь знает об этом? Спасибо!

Ответы [ 3 ]

2 голосов
/ 13 февраля 2012

MVC избавляется от искаженного html-кода серверных элементов управления, огромного объема viewstate и, как правило, делает html-файл рендеринга намного чище и эффективнее. Поэтому, чтобы ответить на ваш вопрос, да, MVC облегчит вам иметь чистый HTML, который останется таким, каким вы его написали, без рендеринга asp.net, который все испортит.

2 голосов
/ 13 февраля 2012

ASP.NET MVC дает вам больше элемента управления о том, как отображаются HTML, CSS и JavaScript, потому что у вас нет всех встроенных элементов управления, которые отображают это для вас.Поскольку у вас есть полный контроль над этими элементами, у вас больше возможностей для разработки в кросс-браузерной манере.Это увеличивает нагрузку на разработчиков.Это классический компромисс между властью и ответственностью.

1 голос
/ 13 февраля 2012

Проверка подлинности Windows поддерживается в Safari.Если у вас возникли проблемы, можете ли вы дать некоторые подробности.

Элементы управления веб-формой (с более новой версией asp.net) обычно хорошо работают во всех браузерах.Проблема в том, что когда этого не происходит, их трудно отследить.У меня также были проблемы, из-за которых они плохо работали с IE6, отслеживать их и исправлять их немного сложно в веб-формах.Но это компромисс, если вы хотите перетаскивать элементы управления.

В MVC нет концепции элементов управления, подобных веб-формам.Вы контролируете все, что доставляется клиенту, файлы HTML, CSS и Javascript.У вас есть помощники HTML для рендеринга ваших моделей в соответствующие элементы управления HTML.Объем дополнительного кода, который вы будете писать, будет зависеть от задачи, которую вы пытаетесь выполнить.Поскольку вы управляете всеми активами, доставляемыми клиенту, вам будет проще отслеживать причудливые проблемы, связанные с браузером.

Использование MVC не означает, что вы не столкнетесь с проблемами, связанными с несколькими браузерами.Это может быть легче исправить, но тогда, если у вас есть опыт работы с веб-формами, вы сможете достичь тех же результатов.

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