Ви завантажували файли на цей сайт, щоб їх прочитати. У якийсь момент хтось запитує, чи можна те саме розмістити всередині програми, над якою ви працюєте — справу, заяву, чертеж, відкриті на вашій власній сторінці замість завантаження. Це можливо, і рішення простіше, ніж здається, бо змінюється лише одна річ.

Одна річ, яка змінюється: куди йде файл
Тут ви завантажуєте документ до нас, він рендериться, і видаляється, коли ви його закриваєте. Це правильний підхід для файлу, який вам надіслали один раз і ви хочете прочитати зараз.
Це неправильний підхід для документа, який не ваш, щоб переміщати. Медична карта, підписаний контракт, чертеж під NDA — їх не можна залишати вашої інфраструктури, і жодне обіцяння щодо видалення цього не виправить, бо файл вже подорожував. Вбудовування рендерера змінює це: документ відкриває ваш сервер, всередині вашої мережі, а в браузер передається лише готове зображення. Файл ніколи не переміщується.
Ось чому варто вбудовувати. Усе інше — деталі.
Це компонент, а не віджет
Перша помилка людей: це не JavaScript, який відкриває файл у браузері. Це рідний .NET‑компонент, який ви підключаєте до свого проєкту, а рендеринг відбувається на сервері. Ваша сторінка отримує готовий результат.
Дві наслідки. Позитивний: браузер нічого не встановлює — ні плагінів, ні ActiveX, ні читача — тому працює однаково і на заблокованому десктопі, і на телефоні. Те, що треба планувати: ваш сервер виконує роботу, тому 200‑сторінковий PDF і 40 МБ чертеж — це різні запити. Підбирайте машину під найбільший файл, який ви готові приймати, і відхиляйте все, що більше.
Що треба вирішити перед початком
Три питання, і жодне з них не про переглядач:
- Звідки надходять документи — база даних, файловий шар, сховище blob?
- Хто має право їх бачити, і чи URL переглядача це забезпечує, чи просто припускає? Точка рендерингу, доступна всім, хто знає ідентифікатор документа, — це класична дірка.
- Що відбувається з тимчасовими файлами, які створює рендер, і коли.
Відповіді на ці питання роблять інтеграцію короткою. Якщо їх відкласти, ви будете додавати авторизацію до вже працюючого переглядача, що гірше.
Де це працює
.NET Framework 4.0 і вище, а також .NET Standard 2.0 і вище — тому WebForms, MVC, ASP.NET Core, Blazor Server і Linux‑контейнери. Office не потрібно встановлювати на сервер; рендерер читає формати безпосередньо.
Якщо вам потрібно просто прочитати один файл сьогодні, для цього існує PDF‑переглядач і інші переглядачі тут. Якщо ж мова про ваш застосунок, компонент, його пакети та API‑документація доступні на Doconut.com.