0

こんにちは、データベース フィールドに画像を保存しました。その画像を Crystal Report Viewer に表示したいのですが、実行方法がわかりません。ヘルプや提案は非常に役立ちます。

4

1 に答える 1

-1

OK、私は SQLite を使用していましたが、重要なことは 1 を作成することです。) データを保存するための BLOB フィールドが使用されます。

2.) 次のコードを使用してファイルを選択します。このためには、[開く] ダイアログ ボックスを呼び出す必要があります。

{ 

OpenFileDialog of1 = new OpenFileDialog();

of1.Filter = "JPEG Files (*.jpeg)|*.jpeg|PNG Files (*.png)|*.png|JPG Files (*.jpg)|*.jpg";

of1.ShowDialog();

tbImage.Text = of1.FileName;

}

注: 関連するデータベース フィールド タイプを System.byte[]; として設定することを忘れないでください。

3.) ファイルを Byte Stream に変換します。{

byte[] imageBt = null;

FileStream fstream = new FileStream(tbImage.Text,FileMode.Open,FileAccess.Read);

BinaryReader br = new BinaryReader(fstream);

imageBt = br.ReadBytes((int)fstream.Length);

}

4.) データベースに画像を挿入する

{
String query = "Insert into Employee Values (" + e1.EmpID + ",'" + e1.FirstName + "','" + e1.LastName + "','" + e1.EmailAddress + "', @IMG)";

myCommand = new SQLiteCommand(query, dbConn);

myCommand.Parameters.Add(new SQLiteParameter("@IMG", e1.Image));
}

最初に画像を取得するには、ImageBox が必要です

1.) 次のコードを使用して、BLOB データ バイトを取得し、画像を画像ボックスに配置します {

MemoryStream mstream = new MemoryStream((byte[])(reader["Image"]));

ImageBox.Image = System.Drawing.Image.FromStream(mstream);

}
于 2013-07-03T08:48:04.250 に答える