我正在研究项目.在我的系统中,当我运行项目时,它运行良好,但在我检查后将其上传到我的域,然后它显示错误,如:
"当应用程序未在UserInteractive模式下运行时显示模式对话框或表单不是有效操作.指定ServiceNotification或DefaultDesktopOnly样式以显示来自服务应用程序的通知."
描述:执行当前Web请求期间发生未处理的异常.请查看堆栈跟踪以获取有关错误及其源自代码的位置的更多信息.
异常详细信息:System.InvalidOperationException:当应用程序未在UserInteractive模式下运行时显示模式对话框或窗体不是有效操作.指定ServiceNotification或DefaultDesktopOnly样式以显示来自服务应用程序的通知.
这是什么原因,我该如何解决?
请帮我...
谢谢.
Nef*_*iis 11
您100%可以在服务器端执行此操作...
Protected Sub Button3_Click(sender As Object, e As System.EventArgs)
MesgBox("Test")
End Sub
Private Sub MesgBox(ByVal sMessage As String)
Dim msg As String
msg = "<script language='javascript'>"
msg += "alert('" & sMessage & "');"
msg += "<" & "/script>"
Response.Write(msg)
End Sub
Run Code Online (Sandbox Code Playgroud)
这里实际上有很多方法可以解决这个问题http://www.sislands.com/coin70/week1/dialogbox.htm
Ant*_*ula 10
您无法从ASP.NET应用程序中显示ON SERVER对话框,当然,您可以这样做,但由于您的用户使用浏览器并且无法看到服务器上引发的消息,因此没有任何意义.您必须了解网站的工作原理,服务器端代码(在您的情况下为ASP.NET)在服务器上生成html,javascript等,然后浏览器加载该内容并将其显示给用户,因此为了向用户提供模态消息框用户必须使用Javascript,例如警报功能.
以下是asp.net的示例:
小智 10
可以通过添加来解决此错误MessageBoxOptions.ServiceNotification
.
MessageBox.Show(msg, "Print Error", System.Windows.Forms.MessageBoxButtons.YesNo,
System.Windows.Forms.MessageBoxIcon.Error,
System.Windows.Forms.MessageBoxDefaultButton.Button1,
System.Windows.Forms.MessageBoxOptions.ServiceNotification);
Run Code Online (Sandbox Code Playgroud)
但是,如果您的Web应用程序安装在IIS或服务器上,它将不会显示任何对话框.因为在IIS或服务器中它托管在没有任何桌面的工作进程上.
归档时间: |
|
查看次数: |
114392 次 |
最近记录: |