如何在asp.net Web应用程序中实现后台进程

时间:2013-05-18 08:18:41

标签: c# asp.net

我正在开发一个Web应用程序,我在这里发送电子邮件到数据网格中的所选候选电子邮件ID。我在应用程序中使用System.Net.Mail命名空间。当我向候选人发送邮件然后邮件类返回响应。所以我想在我的网络应用程序中进行后台处理并显示处理图像,直到所有邮件都成功发送。任何人都可以帮我解决这个问题吗?

2 个答案:

答案 0 :(得分:0)

有很多方法可以执行此操作。

只需在asp.net中使用loader(.gif)图像创建AJAX模式弹出窗口,然后在SmtpClient的Send()方法之前显示它。见下面的伪代码: -

 SmtpClient mSmtpClient = new SmtpClient();
 modalPopUp.Show();
 mSmtpClient.Send(mMailMessage);
 modalPopUp.Close();

注意:别忘了在catch块中关闭它。

答案 1 :(得分:0)

有许多方法。你可以通过ajax来做到这一点。

  • 使用gif图片拍摄div。
  • 隐藏此div initailly
  • 当您点击提交按钮时,显示此div
  • 在后台(在你的cs代码中),实现邮件发送。
  • 在发送完所有邮件后,你得到回复,再次隐藏div。

这是前端的简单代码,用于显示进度。在你的asp.net页面的后端做邮件发送东西......

<script>
$(document).ready(function () {
    $("#click").click(function () {
        $("#loader").show();
        $.ajax({
            url: '/Home/SendMails/',
            type: 'POST',
            success: function (msg) {
                $("#loader").hide();
            }
        });
    });
});
</script>

<div id="1"></div>
<input type="submit" id="click" value="Click" />

<div id="loader" style="display:none">
    Sending Mails....
    <img src="../../Images/ajax-loader.gif" />
</div>