В ASP.Net (с C #) я пытаюсь создать файл .DAT с простым текстом в нем и отправить его в браузер и принудительно загрузить.Я пробовал несколько вещей, но я не могу заставить его работать.В моем aspx-файле есть ImageButton
<asp:ImageButton ID="btnSave" runat="server" CausesValidation="False" ImageUrl="~/Images/Stages/Database/Save.png" OnClick="btnSave_OnClick" Width="26px" />
. В методе OnClick я пытаюсь создать файл и отправить его в браузер.
protected void btnSave_OnClick(object sender, EventArgs e)
{
string file = "test.dat";
string fileName = "~\\Stages\\Broekx\\Databanken\\" + file;
FileStream fs = new FileStream(MapPath(fileName), FileMode.Open);
long cntBytes = new FileInfo(MapPath(fileName)).Length;
byte[] byteArray = new byte[Convert.ToInt32(cntBytes)];
fs.Read(byteArray, 0, Convert.ToInt32(cntBytes));
fs.Close();
ImageButton btnSave = (ImageButton)FormViewStagesDummy.FindControl("btnSave");
btnSave.Visible = false;
File.Delete(Server.MapPath(fileName));
if (byteArray != null)
{
this.Response.Clear();
this.Response.ContentType = "text/plain";
this.Response.AddHeader("content-disposition", "attachment;filename=" + file);
this.Response.BinaryWrite(byteArray);
this.Response.End();
this.Response.Flush();
this.Response.Close();
}
}
Файл test.dat существует в правильной папке и должен быть удален после того, как он был прочитан в байтах.Я пробовал это, не удаляя файл, и это тоже не будет работать.
После нажатия btnSave кнопка должна быть скрыта, поэтому я установил для параметра Visible значение false.
I 'Мы также пробовали это с типом контента "application / octet-stream" или с файлом PDF и типом контента "application / pdf", но ничего не работает.Страница загружается нормально, и файл не загружается.