меня зовут Омер и Има студент. Я создал сайт и хочу, чтобы пользователь загрузил видео. я использовал объект ole для добавления базы данных, и мне это удалось, но у меня возникли проблемы с добавлением видео с базы данных на сайт. Я не хочу сохранять файл в папке, а затем использовать URL. это возможно? код: App_Data:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.IO;
using System.Runtime.Serialization.Formatters.Binary;
using System.Runtime.Serialization;
public class MyVideoHelper
{
public MyVideoHelper()
{
}
//הפונקציה מקבלת מסלול של קובץ ומחזירה את הקובץ מומר לבייטים
public byte[] ConvertFileToByte(Stream file)
{
byte[] video = null;
BinaryReader br = new BinaryReader(file);
video = br.ReadBytes((int)(file.Length));
return video;
}
public FileStream ConvertByteToFile( byte[] file)
{
Stream stream = new MemoryStream(file);
FileStream filestream = stream as FileStream;
return filestream;
}
}
sapx.cs
MyVideoHelper x = new MyVideoHelper();
string hero3 = Request.Form["hero3"];
if (Session["loggedIn"] != "true")
{
Response.Write("<script>alert('You Are not SignIN!');</script>");
return;
}
if ((video2.PostedFile != null) && (video2.PostedFile.ContentLength > 0))
{
Stream fs = video2.PostedFile.InputStream;
string command = "INSERT INTO videos (hero, file) VALUES( '" + hero3 + "','" + x.ConvertFileToByte(fs) + "')";
MyAdoHelper.DoQuery("omerwatchdb.accdb", command);
}
string sql = "SELECT file FROM videos";
DataTable info = MyAdoHelper.ExecuteDataTable("omerwatchdb.accdb", sql);
string omer;
omer = info.Rows[2][0].ToString();
byte[] bytes = Encoding.ASCII.GetBytes(omer);
vid = x.ConvertByteToFile(bytes);