Rawan Mansourr Ответов: 3

Диалоговое окно результат в ASP.NET


Могу ли я использовать этот код так, как он есть в Asp.net , я имею в виду, могу ли я использовать результат диалога и окно сообщения в Asp.net-что??

Что я уже пробовал:

DialogResult Dialog = MessageBox.Show(" The File is Already exist , Do you want to replace it?", Name, MessageBoxButtons.YesNo);
                if (Dialog == DialogResult.Yes)
                {

                    SqlCommand cmdupdate = new SqlCommand("update Attcehments set Data=@Data,Semester='" + semester + "' where AttchName='" + Name + "'and CourseNum='" + course_number + "'", connection);
                    cmdupdate.Parameters.Add("@Data", SqlDbType.Binary).Value = bytes;
                    cmdupdate.ExecuteNonQuery();
                    lblMessage.Text = "Updated Successfully";
                }
                else { lblMessage.Text = "Not updated!!"; }//end else

            }//end if
            else
            {
                //insert the file into database

                string strQuery = "insert into Attcehments(AttchName, CourseNum,Semester, Data,Priority)  values ('" + Name + "','" + course_number + "','" + semester + "', @Data,'" + priority + "')";
                SqlCommand cmdinsert = new SqlCommand(strQuery, connection);
                cmdinsert.Parameters.Add("@Data", SqlDbType.Binary).Value = bytes;
                cmdinsert.ExecuteNonQuery();
                lblMessage.Text = "File Uploaded Successfully";



            }

[no name]

Конечно, вы можете использовать messagebox. Если и только если у вас есть кто-то, сидящий перед компьютером веб-сервера, желающий и способный сидеть там и ждать, пока он всплывет, и нажмите кнопку Ok, которую ваш пользователь будет никогда не видеть.

Rawan Mansourr

что я могу использовать вместо этих результатов окна сообщения и диалогового окна?

3 Ответов

Рейтинг:
27

Karthik_Mahalingam

Вы не можете использовать Сообщение результату в Asp.net, он должен быть заменен на функция подтверждения() [^] в javascript, при условии, что вам придется позаботиться о своей бизнес-логике и знать, как это сделать. Жизненный цикл страницы Asp[^] завод

Разметить

<asp:Button ID="Button1" OnClientClick="funCheck()" runat="server" Text="Button" OnClick="Button1_Click" />
    <asp:HiddenField ID="HiddenField1" runat="server" />

Язык JavaScript
function funCheck() {
          var flag = confirm('The File is Already exist , Do you want to replace it?');
          var hdnfld = document.getElementById('<%= HiddenField1.ClientID %>');
          hdnfld.value = flag ? '1' : '0';
      }

С фоновым кодом
protected void Button1_Click(object sender, EventArgs e)
       {
           if (HiddenField1.Value == "1")
           {
               // do some action
           }
           else
           {
               // do other action
           }
       }


Rawan Mansourr

Это работает , большое вам спасибо.

Rawan Mansourr

но ,пожалуйста, у меня есть вопрос: каков наилучший синтаксис для отображения предупреждения asp.net страницы?, теперь я использую сообщение скрипта , это хорошо или нет?

Karthik_Mahalingam

существует только один синтаксис для предупреждения();
нет ничего называемого лучшим синтаксисом
что такое сообщение сценария?

Rawan Mansourr

Вот и все
string script = "alert(\"координатор уже существует\");";
Элемента управления scriptmanager.RegisterStartupScript(this, GetType(),
"ServerControlScript", скрипт, true);


второй :
Ответ.Напишите("alert('пожалуйста, сначала выберите курс и семестр с главной страницы!!');окно.файл MainPage расположение='.страницы aspx';");

Karthik_Mahalingam

вы должны использовать первый из них..

второй будет просто отображаться в виде текста.
проверьте его и посмотрите, как он работает.

Rawan Mansourr

он работает , но не должным образом , Вы имеете в виду использовать первый способ?, и последний вопрос, как я могу использовать перенаправление или расположение windows , если я использую первый способ, и спасибо.

Karthik_Mahalingam

string script = "alert('Coordinator Already Exsist'); window.location='yoururl.aspx'";
ScriptManager.RegisterStartupScript(this, GetType(),
"ServerControlScript", script, true);

Rawan Mansourr

это сработало , спасибо

Karthik_Mahalingam

Добро пожаловать

Rawan Mansourr

Пожалуйста, сэр , у меня есть вопрос , когда я использую Script manager в загрузке страницы , каждый раз , когда я нажимаю на страницу, она показывается, мне нужно показать ее один раз, как это сделать? и спасибо тебе

Karthik_Mahalingam

Используйте условие page.ispostback

Рейтинг:
2

Stein The Ruler

aspx:

<asp:LinkButton ID="ModalDummy" runat="server" />
<ajaxToolkit:ModalPopupExtender ID="ModalDummy_ModalPopupExtender" runat="server" BehaviorID="ModalDummy_ModalPopupExtender" TargetControlID="ModalDummy" PopupControlID="PanelPopup">
</ajaxToolkit:ModalPopupExtender>
<asp:Panel ID="PanelPopup" runat="server" DefaultButton="ButtonContactSend">
    your popup
</asp:Panel>



с фоновым кодом
ModalDummy_ModalPopupExtender.Show();


Rawan Mansourr

это богатый ответ ,Спасибо

Stein The Ruler

это просто чтобы показать вам, что вам не нужно использовать какой-либо javascript и держать все это .net

Rawan Mansourr

но это дает непризнанный префикс ajaxtoolkit , а modalpopuo не существует

Stein The Ruler

вы можете установить его с помощью nuget manager. команда: Install-Package AjaxControlToolkit

Rawan Mansourr

хорошо ,Хорошо , спасибо

Рейтинг:
1

Dave Kreskowiak

Вы не можете использовать MessageBox в ASP.NET приложение. Конечно, это работает на вашей машине. Разверните его на реальном веб-сервере, и ваш код будет сидеть там в ожидании ввода, который никогда не произойдет, поскольку MessageBox появится на рабочем столе на сервере, а не на клиенте. Даже если вы войдете в консоль сервера, вы все равно не увидите MessageBox. Он появится на рабочем столе, который не виден вошедшему в систему пользователю.

Ваш код должен быть полностью переработан, чтобы удалить все эти ссылки на MessageBox и DialogResult. Они не имеют никакого значения в ASP.NET приложение.


Rawan Mansourr

хорошо , что я могу использовать вместо этих окон сообщений и диалоговых окон ?

Dave Kreskowiak

Вы должны делать это в своем клиентском javascript-коде. Я не знаю, что вы делаете, но из того, что вы опубликовали, ваш клиентский код ничего не будет знать ни о каких уже существующих файлах.

Stein The Ruler

Обычно я использую ModalPopupExtender в наборе инструментов Ajax Control Toolkit