Самый важный случай для использования интерфейсов по реализациям находится в параметрах к Вашему API. Если Ваш API берет параметр Списка, то любой, кто использует его, должен использовать Список. Если тип параметра является IList, то вызывающая сторона имеет намного больше свободы и может использовать классы, о которых Вы никогда не слышали, который даже не мог существовать, когда Ваш код был записан.
Нет, если в вашем стандарте кодирования не указано иное.
Код программной части IMO помогает разделить проблемы, поэтому я предпочитаю это, но иногда просто иметь дело с одним файлом тоже приятно.
Код программной части - более традиционное и логичное место. Если работает, значит работает, но я терпеть не могу делать это в aspx.
Некоторое время назад я сделал точный пост:
OnDataBinding vs Inline: плюсы, минусы и накладные расходы
Я предпочитаю исходный код. У меня обычно есть область #region для всего, что связано с привязкой данных. Он позволяет специалистам в HTML / CSS настраивать HTML, и все, что им нужно знать, - это то, какие основные элементы управления использовать, и определять событие OnDataBinding в определении элемента управления. Они могут перемещать объекты и делать все, что угодно, и не имеют представления о том, что на самом деле требуется, чтобы поместить данные в эту привязку данных, поскольку это может быть не так просто, как простое «Eval» («что-то»);
Ну, есть встроенный код, а есть встроенный код. Если у вас есть блок сценария вверху для page_load, это нормально. Но если вы смешиваете много пчелиных укусов ( <%%>
) с разметкой, у вас в конечном итоге начнутся проблемы, когда эти пчелиные укусы не работают так, как вам хотелось бы. с другими серверными элементами управления.
Лично я предпочитаю ошибки компиляции ошибкам времени выполнения, поэтому я помещаю всю свою логику в программный код.
Иногда, когда мне просто нужно, чтобы значение отображалось в page Я поставлю <% = SomeValue%>, но даже тогда я предпочитаю создать метку и установить ее.
Я хочу убедиться, что понимаю вопрос - под встроенным вы подразумеваете такие фрагменты, как
<a><% some.asp.net.code %></a>
, или вы имеете в виду один или два файла для каждой страницы:
page.aspx
page.aspx.cs
?
Поскольку я НЕ являюсь поклонником того, что я называю «встроенным» кодом в первом примере, но я ДЕЙСТВИТЕЛЬНО предпочитаю код и разметку в одном файле с