Я пытаюсь загрузить файл с диска, а затем вставить файл в столбец dbbinary db.Загрузить файл и сохранить в базу данных
Я не могу понять, как вставить двоичный файл.
Я использую C# и Linq для Sql в приложении WPF.
Вот что я пытаюсь до сих пор! Любые предложения или рекомендации будут оценены.
private void UploadFile()
{
DatabaseData.DataClassesDataContext context = new DatabaseData.DataClassesDataContext();
{
OpenFileDialog dlgOpen = new OpenFileDialog();
dlgOpen.Title = "Select file";
FileData fd = new FileData();
if (dlgOpen.ShowDialog() ?? false)
{
FileStream inStream = File.OpenRead(dlgOpen.FileName);
//FileStream outStream = File.OpenWrite(dlgOpen.FileName + ".xlsx");
int b;
while ((b = inStream.ReadByte()) > -1)
// outStream.WriteByte((byte)b);
fd.FileId = Guid.NewGuid();
//fd.DataFile = inStream;//DataFile is the Varbinary column in the db
fd.Title = dlgOpen.FileName;
fd.FileExtension = txtExtension.text;
context.FileDatas.InsertOnSubmit(fd);
context.SubmitChanges();
//outStream.Flush();
//outStream.Close();
inStream.Close();
}
}
}
ли, что даже компилировать? Я бы подумал, что столбец 'varbinary' будет представлен массивом/набором' byte 'в коде, а не потоком! – joshuahealy
Нет, когда я запускаю вставки, он терпит неудачу. – UserRegistration
Неудача как? Без дополнительной информации нам пришлось бы реплицировать вашу базу данных и DBML, чего меньше людей хотят сделать. – TheEvilPenguin