Групи збірок
Засіб компіляції створює збірки по-різному в залежності від типу вихідного файлу і папки. Вихідні дані із засобу компіляції можуть бути розділені на дві групи збірок. Засіб злиття об'єднує дві групи збірок по-різному.
Нижче наведені ці групи збірок:
Збірки вмісту призначеного для користувача інтерфейсу веб-вузла, які створюються з файлів вмісту призначеного для користувача інтерфейсу веб-вузла, таких як ASPX, ASCX, MASTER, ASHX, SKIN і локальних файлів RESX (в папці App_LocalResources). Способи злиття цих збірок залежать від того, чи є попередньо скомпільований вузол оновлюваних, а це визначається по параметру u в засобі компіляції. Якщо скомпільований вузол є оновлюваних, вміст призначеного для користувача інтерфейсу може бути оновлено без повторної компіляції вузла. Якщо веб-вузол є оновлюваних, файли вмісту залишаються в своїх вихідних папках, а об'єднуються тільки файли пов'язаного коду. Якщо вузол не є оновлюваних, файли вмісту ASCX, MASTER і SKIN видаляються зі своїх вихідних папок. Файли ASPX в ASP.NET замінені файлом маркера, який не має вмісту. У цьому випадку вміст і код користувальницького інтерфейсу об'єднуються.
Складання верхнього рівня, тобто складання, створені з папок, таких як App_Code, App_GlobalResources, App_WebReferences. Складання верхнього рівня також створюються для певних файлів, таких як Global.asax. Складання верхнього рівня завжди компілюються в папці Bin на вузлі розгортання. Вузол остаточного розгортання нічого очікувати утримувати папки App_Code, App_GlobalResources і App_WebReferences або файлу Global.asax. Замість цього вузол остаточного розгортання матиме одну або кілька збірок в каталозі Bin в залежності від параметрів, використовуваних в засобі злиття. Папки, визначені користувачем, завжди компілюються, крім тих випадків, коли вузол остаточного розгортання зберігає папку, визначену користувачем, яка містить файли вмісту призначеного для користувача інтерфейсу.
Статичний зміст, таке як файли, що мають розширення CSS, GIF, HTM, HTML, JPG, JS, залишаються в своєму початковому розташуванні в попередньо компільованою структурі каталогів. Засіб злиття не переміщує і не змінює їх.
Сценарії компіляції і злиття
Для досягнення цілей розгортання і управління випуском можна використовувати поєднання динамічної компіляції, попередньої комбінації за допомогою засобу компіляції та об'єднання за допомогою засобу злиття.
Об'єднання додатки для розгортання
Збірки для веб-вузла об'єднуються за допомогою виконання кошти злиття і вказівки розташування попередньо скомпільованого вузла з параметром applicationPath. Засіб злиття ASP.NET об'єднує попередньо скомпільований вузол на місці. Іншими словами, засіб не створює нову об'єднану копію попередньо скомпільованого вузла. Параметр applicationPath може вказувати остаточне розташування веб-додатки. Крім того, скомпільований додаток може бути в подальшому розгорнуто, наприклад шляхом копіювання каталогу.
При об'єднанні засобом злиття попередньо скомпільованого вузла, зберігається розташування динамічних файлів, як вони відображалися на етапі попередньої компіляції. Єдиною зміною, внесеним засобом злиття в вміст динамічних файлів, є зміни директив @ Page, @ Control і @ Master. Це гарантує успадкування файлами, що містять ці директиви, правильної об'єднаної збірки в папці Bin.
Для збірок, які є похідними з папок, визначених користувачем (включаючи кореневу папку вузла), деякі параметри об'єднання можуть привести до створення імен, які будуть відрізнятися від тих, що були задані в попередньо скомпільованому вузлі. Наприклад, в цій табличці вказано імена об'єднаної збірки при використанні кошти злиття без параметрів. Ім'я збірки для кожної папки, яку Ви для цього, є App_Web_nnnn.dll, де nnnn - це внутрішньо створене хеш-значення.
Теми в об'єднаному вузлі, який не є оновлюваних, обробляються по-іншому. В попередньо скомпільованому, ще не об'єднаному вузлі існує окрема збірка для кожної теми. Кожна збірка називається App_Theme_ThemeName.dll. В об'єднаному вузлі існує тільки одна збірка Theme.dll. Якщо попередньо скомпільований вузол є оновлюваних, в об'єднаній папці Bin не будуть присутні збірки, засновані на темах.
