سریال سازی و کار با یک سند در یک پایگاه داده

یکی از کارهایی که ممکن است هنگام کار با اسناد لازم باشد انجام دهید ذخیره و بازیابی اشیاء Document به و از یک پایگاه داده است. به عنوان مثال، اگر شما هر نوع سیستم مدیریت محتوا را پیاده سازی می کنید، این کار ضروری خواهد بود. تمام نسخه های قبلی اسناد باید در سیستم پایگاه داده ذخیره شوند. توانایی ذخیره اسناد در پایگاه داده نیز بسیار مفید است زمانی که برنامه شما یک سرویس مبتنی بر وب را ارائه می دهد.

Aspose.Words امکان تبدیل یک سند به یک آرایه بایت برای کار بعدی با این سند در یک پایگاه داده را فراهم می کند.

تبدیل یک سند به آرایه بایت

برای ذخیره یک سند در یک پایگاه داده یا تهیه یک سند برای انتقال در سراسر وب، اغلب لازم است که سند را برای به دست آوردن یک آرایه بایت سریال کنید.

برای سریال کردن یک شی Document در Aspose.Words:

  1. با استفاده از روش Save اضافه بار کلاس Document آن را به MemoryStream ذخیره کنید.
  2. روش ToArray را فراخوانی کنید که یک آرایه از بایت ها را که سند را به شکل بایت نشان می دهد، باز می گرداند.

مراحل بالا را می توان معکوس کرد تا بایت ها را به یک شی Document بارگذاری کند.

مثال زیر نشان می دهد که چگونه یک شی Document را برای به دست آوردن یک آرایه بایت سریال سازی کنیم و سپس چگونه آرایه بایت را برای به دست آوردن یک شی Document دوباره سریال سازی کنیم:

ذخیره، خواندن و حذف یک سند در یک پایگاه داده

این بخش نشان می دهد که چگونه یک سند را در یک پایگاه داده ذخیره کنید و سپس آن را به یک شی Document برای کار با آن بارگذاری کنید. برای سادگی، نام فایل کلید مورد استفاده برای ذخیره و گرفتن اسناد از پایگاه داده است. پایگاه داده شامل دو ستون است. ستون اول “FileName " به عنوان یک رشته ذخیره می شود و برای شناسایی اسناد استفاده می شود. ستون دوم “FileContent " به عنوان یک شیء BLOB ذخیره می شود که شیء سند را در فرم بایت ذخیره می کند.

مثال کد زیر نشان می دهد که چگونه یک اتصال به یک پایگاه داده را تنظیم کنید و دستورات را اجرا کنید:

مثال کد زیر نشان می دهد که چگونه یک سند را به پایگاه داده ذخیره کنید، سپس همان سند را دوباره بخوانید، و در نهایت رکورد حاوی سند را از پایگاه داده حذف کنید:

یک سند را در یک پایگاه داده ذخیره کنید

برای ذخیره یک سند در یک پایگاه داده این سند را به آرایه ای از بایت ها تبدیل کنید، همانطور که در ابتدای این مقاله توضیح داده شده است. سپس، این آرایه بایت را در یک فیلد پایگاه داده ذخیره کنید.

مثال کد زیر نشان می دهد که چگونه یک سند را به پایگاه داده مشخص شده ذخیره کنید:

CommandString را مشخص کنید که یک عبارت SQL است که تمام کار را انجام می دهد:

  • برای ذخیره یک سند در پایگاه داده، دستور “INSERT INTO” و یک جدول مشخص شده همراه با مقادیر دو فیلد رکورد – FileName و FileContent استفاده می شود. برای جلوگیری از پارامترهای اضافی، نام فایل از خود شی Document گرفته شده است. مقدار فیلد FileContent از جریان حافظه، که شامل یک نمایش باینری از سند ذخیره شده است، بایت اختصاص داده می شود.
  • خط کد باقی مانده دستور را اجرا می کند که سند Aspose.Words را در پایگاه داده ذخیره می کند.

یک سند را از یک پایگاه داده بازیابی کنید

برای بازیابی یک سند از پایگاه داده، رکوردی را که حاوی داده های سند است به عنوان آرایه ای از بایت ها انتخاب کنید. سپس آرایه بایت را از رکورد به MemoryStream بارگذاری کنید و یک شی Document ایجاد کنید که سند را از MemoryStream بارگذاری کند.

مثال کد زیر نشان می دهد که چگونه یک سند را از پایگاه داده مشخص شده با استفاده از نام فایل به عنوان کلید برای گرفتن این سند بازیابی و بازگردانید:

حذف یک سند از یک پایگاه داده

برای حذف یک سند از پایگاه داده، از دستور SQL مناسب بدون هیچ گونه دستکاری در شی Document استفاده کنید.

مثال کد زیر نشان می دهد که چگونه یک سند را از پایگاه داده حذف کنیم، با استفاده از نام فایل برای گرفتن رکورد: