Я разбираюсь в n-уровневых приложениях. Я понимаю разделение уровней кода, например / UI, BL (бизнес-логика), DL (уровень данных).
В приложении ASP.Net вы просто ссылаетесь на проект C #, который выполняет BL и DL, и все в порядке.
Чего я не понимаю, так это как бы вы реализовали это на отдельных серверах? Есть ли у вас DLL для BL и DL в папке bin, но параметр в файле web.config указывает ему, куда обращаться для связи, или у вас есть фактические BL и DL, работающие на отдельном сервере, а затем связь с Интерфейс сделан через веб-сервис?
На данный момент у меня есть стандартное приложение веб-форм ASP.Net, которое должно отделять сторону безопасности от веб-сервера и основного приложения на сервере приложений, однако я не думаю, что это возможно.