目前,我正在研究抽奖系统。我的系统运行良好,但我只想添加一个功能,那就是它可以同时在另一个页面的表格上显示抽奖结果。以前,当用户在系统中点击按钮绘制时,它会在页面上显示结果。那么,当用户点击按钮绘制时,如何使结果同时显示在另一个页面的表格上呢?
这是我的抽奖代码:
using System;
using System.Collections.Generic;
using System.Configuration;
using System.Data;
using System.Data.SqlClient;
using System.IO;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
public partial class _Default : System.Web.UI.Page
{
string constr = ConfigurationManager.ConnectionStrings["lucky"].ConnectionString;
protected void Page_Load(object sender, EventArgs e)
{
}
static List<string> list = new List<string>();
protected void Button1_Click(object sender, EventArgs e)
{
string query = "SELECT TOP 1[Emp_id]FROM Emp_Info WHERE[Attendance] = 'Present'ORDER BY NEWID()";
using (SqlConnection con = new SqlConnection(constr))
{
using (SqlCommand cmd = new SqlCommand(query))
{
using (SqlDataAdapter sda = new SqlDataAdapter())
{
cmd.Connection = con;
sda.SelectCommand = cmd;
using (DataTable dt = new DataTable())
{
sda.Fill(dt);
if (dt.Rows.Count > 0)
{
if (list.Any(x => x.Equals(dt.Rows[0]["Emp_id"].ToString())))
{
//Label1.Text += "is duplicate";
}
else
{
list.Add(dt.Rows[0]["Emp_id"].ToString());
Label1.Text = dt.Rows[0]["Emp_id"].ToString();
}
}
else
{
Label1.Text += "Cannot draw! ";
}
}
}
}
}
}
} 发布于 2018-04-23 15:08:26
我通常使用SignalR来做这件事。您需要声明一个Hub,并让SignalR JS客户端侦听来自Hub的通知,同时让您的按钮向Hub发送消息。SignalR的一个优点是,如果WebSockets可用,它将透明地处理它们。
另一个好处是你会在你的应用程序中发现它的许多其他用途。例如实时文件上载进度等。
https://stackoverflow.com/questions/49972788
复制相似问题