Я разрабатываю программу в VS2015. Я создал файл abc.html динамически. Теперь мне нужна функциональность, когда пользователь нажимает кнопку, которую Html-файл должен открыть или сохранить в браузере. Как я могу это сделать? код для создания файла Html Динамически выглядит следующим образом:Как загрузить html-файл одним нажатием кнопки в asp.net?
стороне клиента:
<asp:button ID="BtnGenrateHTML" runat="server" text=" Generate HTML " OnClick="btnAddnew_Click" />
код Позади как следует
protected void TestThisHTML(object sender, EventArgs e)
{
string sFileFullName;
string sFilePath;
string sFileName;
string strHTMLGrid = "";
strHTMLGrid = strHTMLGrid + "Dear Customer,<BR><BR> Please provide below OTP to complete registration <BR><BR> ";
strHTMLGrid = strHTMLGrid + "<BR><BR> This OTP is valid for 15 minutes.";
strHTMLGrid = strHTMLGrid + "<BR><BR> With Best Regards - Indiefy";
strHTMLGrid = strHTMLGrid + "<BR><BR> Hi My name is Basant Gera";
sFilePath = Server.MapPath("");
sFileName = "abc.html";
sFileFullName = sFilePath + "\\" + sFileName;
if (!Directory.Exists(sFileFullName))
{
Directory.CreateDirectory(sFilePath);
}
// if it exist than to delete it.
if (System.IO.File.Exists(sFileFullName))
{
System.IO.File.Delete(sFileFullName);
}
// If it deleted than we need to create it again
FileStream fs = new FileStream(sFileFullName, FileMode.Create);
using (StreamWriter w = new StreamWriter(fs, Encoding.UTF8))
{
w.WriteLine(strHTMLGrid);
}
fs.Close();
Page.ClientScript.RegisterStartupScript(this.GetType(), "", "fncpopup();", true);
}
Теперь мой файл abc.Html работает нормально .. Теперь я хочу по щелчку кнопки этот Html-файл получить в браузере и спросить в браузере, который вы хотите открыть, или сохранить его в определенном месте.
<asp:button ID="BtnGenrateHTML" runat="server" text=" Generate HTML " OnClick="btnAddnew_Click" />
Местоположение, в котором сохраняется файл Html ----> Я использовал mappath.server, чтобы сохранить его в текущем каталоге.
Если возможно, сохраните его в папке загрузки в нашем каталоге ПК.
Его рабочий Высокий ... Я применил Но для базы знаний, могу я знаю, что это приложение/октет-поток и Content-Disposition «» присоединение; filename = abc.html ... Пожалуйста, дайте мне знать –
@BasantGera В каждом запросе и ответе между сервером и клиентом есть HTTP-заголовки, содержащие информацию о браузере клиента, запрошенная страница, сервер Здесь, где добавление 'application/octet-stream' как тип содержимого, чтобы сообщить браузеру о существовании файла потока в ответе, поэтому, если вы замените его на «text/html», браузер поймет, что это html-файл. Для «Content-Disposition», «attachment; filename = abc.html' мы присваиваем заголовку http имя файла (abc.html) и отправляем его как вложение (открываем окно приглашения для загрузки в браузере). –
вы можете увидеть о http headers [здесь] (http://code.tutsplus.com/tutorials/http-headers-for-dummies--net-8039) , пожалуйста, проверьте ответ как разрешенный, если это поможет вам –