【发布时间】:2017-03-22 22:03:16
【问题描述】:
我有一个 asp.net 网络表单应用程序(音乐网站)。 我想要一个下载按钮。所以当用户点击它时。选择的音乐开始使用浏览器下载。我该怎么做?
这是我尝试过的代码:
string id_new;
id_new = Session["selectedmusicID"].ToString();
DataTable dt2 = new DataTable();
dt2 = blm.selectMusic("sel_music", Convert.ToInt32(id_new));
string test = dt2.Rows[0][9].ToString();
string test2 = test.Substring(9);
Context.Response.Clear();
Context.Response.Buffer = true;
Context.Response.AppendHeader("Content-Disposition", "attachment; filename=" + test2);
Context.Response.ContentType = "audio/mp3";
Context.Response.TransmitFile(@"~\music\" + test2 );
Context.Response.End();
【问题讨论】:
-
你有没有尝试过?
-
是的,我已经为此编写了一个代码,但是以 .file 格式而不是 .mp3 保存的音乐我编写了有问题的代码
-
您正在做的 test2 子字符串是从文件名中修剪 .mp3 。如果是这样,那是你的问题。传递给内容处置的文件名部分的值是您将在浏览器中看到的值。如果它没有扩展名,则下载为 .file。