На этот вопрос нет единого ответа, но если вы посмотрите на такие приложения, как Codename One Build , вы заметите, что они адаптируются к этому форм-фактору.
Обычно мы просто используем isTablet()
для адаптации пользовательского интерфейса в ключевых точках к другому форм-фактору. Одним из элементов является постоянное боковое меню , которое мы включаем в методе init с помощью кода, подобного следующему:
if(Display.getInstance().isTablet()) {
Toolbar.setPermanentSideMenu(true);
}
Это позволяет боковому меню оставаться открытым все время. В коде мы пытаемся использовать Container
вместо Form
. Это позволяет нам упаковать несколько логических элементов в единый интерфейс для режима планшета.
Несколько активных наборов результатов (MARS) был добавлен специально для этого типа операции так, чтобы у Вас не было двух соединений, открытых одновременно, чтобы смочь читать из SqlDataReader И выполнить дополнительные пакеты.
МАРС совместим с SQL Server 2005 и выше. Заключить в кавычки из документов MSDN:
Перед введением Несколько активных наборов результатов (MARS), разработчики должны были использовать или многочисленные связи или курсоры серверной стороны для решения определенных сценариев.
Для большего количества информации см.:
читающие и обновляющие данные:
MSDN Library - Управление Данными (МАРС) прокручивают вниз к 'Чтению и Обновлению Данных с МАРСОМ'
Это - насколько я знаю причину, МАРС был добавлен, так да я думаю, что необходимо использовать его.
Лучший способ протестировать это состоит в том, чтобы уволить Профилировщика SQLServer и видеть то, что действительно происходит на стороне сервера.
Мое предположение - то, что это не будет лучше, так как Вы используете ExecuteNonQuery (). Так, на самом деле Вы не работаете с несколькими результатами.