Одна вещь, которую вы можете сделать, это то, что если вы можете отдельно компилировать для каждой платформы, вы можете использовать директивы компилятора для ограничения того, что требуется платформе Tablet PC. Однако, если вы используете маппер OR, это может оказаться затруднительным.
Теперь в идеальном мире у вас на самом деле есть объекты Domain (те, которые сопоставляются с OR) с очень малой общей бизнес-логикой. Затем есть слой BO, который потребляет эти объекты домена. Если вам удалось вывести свою кодовую базу таким образом, как вы могли бы теоретически, то иметь только отдельные слои, которые вам нужно развернуть в зависимости от ваших потребностей.
Однако для меня это звучит так, будто вам нужно выполнить интеллектуальное разделение.
Что вам, вероятно, нужно сделать, это сегментировать ваш код так, чтобы BO планшетного ПК находилось в основной сборке BO BO. Затем создайте сборку расширения BO, содержащую дополнительные объекты, правила и т. Д., Необходимые для версий Winform / Web-приложений.
Таким образом, хотя в этот момент у вас будет два компонента бизнес-объекта уровня домена, у вас фактически не будет дублирования. Поскольку ваш объект BO Tablet PC также будет основой для приложения Winform / Asp.net. Тогда расширение dll будет содержать только дополнения, необходимые для больших версий hte-приложений.
Если вы последуете этому подходу, это может упростить управление. Достаточно взглянуть на это с точки зрения общего, необходимого везде, и специализированного подхода. :)
Я могу вдаваться в подробности, если хотите, просто хотел дать вам базовый хит.