我成功地将一个音频文件保存在MySQL数据库中,但我不知道如何从数据库中检索和播放它。任何帮助将不胜感激。
这是我的插入代码:
private void button2_Click(object sender, EventArgs e)
{
try
{
MySqlConnection connection;
string cs = @"server = 127.0.0.1; userid = root; pwd = ; database = atlfmdb;";
connection = new MySqlConnection(cs);
if (upload.Text.Length > 0 &&
vName.Text.Length > 0 &&
vTel.Text.Length>0 &&
tbposition.Text.Length>0)
{
string FileName = upload.Text;
byte[] f = File.ReadAllBytes(upload.Text) ;
MySqlCommand selectcom = new MySqlCommand("insert into interinterview(intName,intPosition,intTel,audioFile)values('" + vName.Text + "','" + tbposition.Text + "','" + vTel.Text + "','" + f + "')", connection);
MySqlDataReader myread;
connection.Open();
myread = selectcom.ExecuteReader();
while (myread.Read())
{
}
connection.Close();
MessageBox.Show("Data saved successfully");
vName.Text = "";
vTel.Text = "";
tbposition.Text = "";
upload.Text = "";
}
}
catch(Exception ex)
{
MessageBox.Show(ex.ToString());
}
}
private void button1_Click(object sender, EventArgs e)
{
try
{
OpenFileDialog openFileDialog1 = new OpenFileDialog();
openFileDialog1.Filter = "Audio files | *.mp3";
if (openFileDialog1.ShowDialog() == DialogResult.OK)
{
upload.Text = openFileDialog1.FileName;
}
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
}
}
}
}
答案 0 :(得分:0)
如果您没有找到解决方案,我已根据此链接中的答案进行了解决: How to play audio file located on server in asp.net
在此链接的末尾,它为您提供Dewplayer zip包的位置。下载并将dewplayer-vol.swf文件放入根文件夹中。
您需要将所有MS SQL命令转换为MySQL并将MySQL.DLL放入bin文件夹中(如果不存在的话)。在我的例子中,我将mp3文件存储为varbinay并使用类似这样的存储过程检索它:
private void BindGrid()
{
string connStr = System.Configuration.ConfigurationManager.ConnectionStrings["MySqlServer"].ConnectionString;
using (MySql.Data.MySqlClient.MySqlConnection conn = new MySql.Data.MySqlClient.MySqlConnection(connStr))
{
using (MySql.Data.MySqlClient.MySqlCommand cmd = new MySql.Data.MySqlClient.MySqlCommand("getaudio", conn))
{
cmd.CommandType = CommandType.StoredProcedure;
conn.Open();
using (IDataReader idr = cmd.ExecuteReader())
{
GridView1.DataSource = idr;
GridView1.DataBind();
}
conn.Close();
}
}
}
您需要创建一个说Audio.ashx的文件并将其放入根文件夹中。希望这可以帮到你。