Windows.Forms对象未在发布/部署中显示,但以调试模式

时间:2018-02-05 17:43:29

标签: c# winforms visual-studio deployment dialog

我的构建问题涉及使用DialogResult对象时没有出现

  1. 发布应用

  2. 提交更改并部署到生产中。

  3. 古怪的部分是它会工作并弹出一个本地版本(使用 Ctrl + F5 或只是 F5 )。 / p>

    Windows窗体对象在此实例中是否存在问题,或者是否可能是其他问题?部署和发布都直接指向对代码有特殊添加的站点,该代码允许显示之前已被CORS策略阻止的照片。我不确定还有什么要补充,因为我无法想到任何会对此产生影响的相关内容。

    根据要求,未显示的代码片段。

     DialogResult dialogResult = MessageBox.Show("Are you sure you want to delete this photo?", "Delete Confirmation", MessageBoxButtons.YesNo, MessageBoxIcon.Warning, MessageBoxDefaultButton.Button2, MessageBoxOptions.DefaultDesktopOnly);
     if (dialogResult == DialogResult.Yes)
     {
       //Delete File and all related material.
     }
     else if (dialogResult == DialogResult.No)
     {
          PicturePlaceholder.Controls.Clear();
     }
    
     //Reload photos.
    

1 个答案:

答案 0 :(得分:1)

debug / relese模式和MessageBox类行为之间没有区别。

如果我理解正确,您正试图从Web服务器上运行的Web应用程序显示Messagebox。简短的回答是: Don&#t;

给出了一些替代方案的更长答案,即herehere

MessageBox和整个Windows Forms - 框架适用于Windows桌面GUI应用程序。在您的情况下,问题是程序运行的上下文。在服务器上下文中执行Windows窗体UI应用程序时,应该以UserInteractive模式执行进程,并且应该有正确的用户使用默认桌面上运行的活动桌面会话登录。