Цитата: Вопрос такой: Есть gridView(Devexpress овский), с полем в которое нужно добавить документ (Excel, Word или любой другой) и сохранить в базе данных SQL. Как реализовать все это на C#, чтобы потом можно было просмотреть этот документ.
Неужели никто не реализовывал это, может кто-нибудь подскажет!!!!!пожалуйста
private void вставитьToolStripMenuItem1_Click(object sender, EventArgs e)
{
Point p = gridView1.GridControl.PointToClient(Control.MousePosition);
GridHitInfo info = gridView1.CalcHitInfo(p);
if (info.InRowCell && info.Column == coldokum)
{
Stream myStream;
OpenFileDialog ofd = new OpenFileDialog();
if (ofd.ShowDialog() == DialogResult.OK)
{
if ((myStream = ofd.OpenFile()) != null)
{
SqlConnection myConnection = new SqlConnection(@"Data Source=ODIN;Initial Catalog=BDOC;User ID=sa;Password=123");
String insertCmd = "insert into foto values (@image);";
SqlCommand myCommand = new SqlCommand(insertCmd, myConnection);
myCommand.Parameters.Add(new SqlParameter("@id_image", SqlDbType.Int));
myCommand.Parameters.Add(new SqlParameter("@image", SqlDbType.Image));
byte[] buf = new byte[myStream.Length];
myStream.Read(buf, 0, (int)myStream.Length);
myStream.Close();
myCommand.Parameters["@id_image"].Value = 1;
myCommand.Parameters["@image"].Value = buf;
myCommand.Connection.Open();
myCommand.ExecuteNonQuery();
gridView1.SetRowCellValue(info.RowHandle-1, info.Column.FieldName, buf);
myCommand.Connection.Close();
MessageBox.Show("Документ добавлен!");
}
}
}
}
событие "вставить" я реализовал, теперь надо реализовать "открыть" , нужно просмотреть файл, который лежит в базе, при нажатии на ячейку в гриде,которая соотв. полю из таблицы в базе данных