ذخیره عکس در بانک به صورت باینری
سلام دوستان
می خوام خود عکس رو در داخل بانک دیتابیس SQL ذخیره کنم.
ممنون میشم اینکه در asp.net core چگونه عمل کرد،راهنمایی کنید.
با ایراد این کار آشنا هستم و روش ذخیره در روت سایت رو بنا به دلایلی نمی خواهم استفاده کنم.
نحوه ذخیره عکس در دیتابیس توسط سی شارپ
در Sql Server
برای ذخیره عکس در دیتابیس شما باید عکس رو به صورت یک فایل در دیتابیس Sql server ذخیره کنید. برای این کار توی دیتابیس و در جدولی که میخواید فایل (یا همون عکس) رو ذخیره کنید یک فیلد از نوع image تعریف کنید. این DataType برای نگهداری اطلاعات به صورت باینری استفاده میشه. در واقع برای ذخیره سازی عکس در دیتابیس باید ابتدا عکس شما تبدیل به یک آرایه باینری بشه و بعد از اون در دیتابیس ذخیره بشه.
در سی شارپ
خب حالا باید عکس خودتون رو در سی شارپ یا همون Asp به یک آرایه باینری تبدیل کنید. برای انجام این کار می تونید از کلاس FileStream استفاده کنید
FileStream fs_image = new FileStream(ImageName, FileMode.Open, FileAccess.Read);
byte[] imgByteArr = new byte[fs_image.Length];
fs_image.Read(imgByteArr, 0, Convert.ToInt32(fs_image.Length));
fs_image.Close();
با استفاده از کدهای بالا ابتدا عکس رو دریافت کردیم و سپس به یک آرایه از نوع byte تبدیل کردیم. حالا شما میتونید imgByteArr رو در دیتابیس ذخیره کنید.
با استفاده از کدهای بالا می تونید عکس رو تبدیل به یک آرایه باینری کنید و سپس در دیتابیس ذخیره کنید. توی این لینک هم در همین مورد اطلاعاتی وجود داره.
ممنون از پاسخگویتون مشکل الان اینجاست از veiw به controller عکس رو چطور ارسال کنم.
در MVC میشد از HttpPostedFileBase ولی core نمیشه استفاده کرد.
اگر جایگزین روشی هست ممنون میشم بگید چطوری هست
خودم از هر روشی که میرم خطا میده
در Asp.net core شما می تونید توسط اینترفیس IFormFile هر نوع فایلی رو از سمت وی به سمت کنترلر ارسال کنید. برای این کار این لینک رو مطالعه کنید
ممنون میشم راهنمایی کنید در سمت کنترلر IFormFile رو درون دیتابیس ذخیره کنم؟
- آموزش استفاده از SignalR در Asp.net Core با مثال عملی
- ادغام چند گزارش استیمول سافت بصورت پی دی اف در یک فایل
- نحوه تغییر استایل کامپوننت select2 چگونه است ؟
- چگونه امنیت پروژه را در Asp.net Core افزایش دهیم ؟
- ارسال پارامتر در دستور window.open جی کویری
- ارسال پارامتر از طریق جاوااسکریپت با کلیک روی تگ a
- خطای 500 زمان اجرا شدن پروژه روی هاست
- کویری نویسی در استیمول سافت جهت فیلتر اطلاعات
- نمایش صفحه در پنجره جدید با کلیک روی لینک (تگ a) در Asp
- افزودن مقادیر به صورت دستی به List دریافت شده از ریپازیتوری
- کار با CkEditor با قابلیت آپلود عکس
- خطا در ایجاد migration در Asp.net core
- تفاوت های Asp.net core و Asp.net mvc چیه؟
- دلیل اسپم شدن ایمیل های ارسالی از سرور
- نحوه لایه بندی پروژه Core و اضافه کردن به IIS
- ارسال ایمیل در Asp.net core
- آیا میشه در mvc core از کامپونت استفاده کرد
- آپلود فایل در Asp.net core چگونه است؟
- حذف کامل یک رکورد در جدول ریلیشن شده
- اشکال در آپلود فایل ویدیو در mvc core 2