私の経験のほとんどはアプリケーションに関するものであり、SQLクエリの操作に問題があります。WebページはSignalerを使用して、別のプロセスによって制御される新しい情報でクライアントを更新しますが、私が実装しようとしているのは、接続された新しいクライアントがすでに参加している他のクライアントと同じ場所にないため、新しいクライアントを更新することです。正しい情報。私はこのSQLクエリを持っています、
public string LoadCurrent()
{
SqlConnection con = new SqlConnection();
SqlConnectionStringBuilder bldr = new SqlConnectionStringBuilder();
bldr.DataSource = @"server\SQLEXPRESS";
bldr.InitialCatalog = "Signalr_Example";
bldr.UserID = "zip";
bldr.Password = "zap";
con.ConnectionString = bldr.ConnectionString;
con.Open();
string currentPage = "";
using (SqlCommand command = con.CreateCommand())
{
command.CommandText = "SELECT TOP 1 activepage FROM active";
con.Open();
command.ExecuteNonQuery();
SqlDataReader myReader = command.ExecuteReader();
while (myReader.Read())
{
int _currentpage = myReader.GetOrdinal("activepage");
currentPage = myReader.GetString(_currentpage);
}
}
return currentPage;
}
クライアントが接続したときにどちらを返したいですか
public Task Connect()
{
string html = LoadCurrent();
_connections.TryAdd(Context.ConnectionId, null);
//This runs firstview which populates a content div on new clients.
Clients[Context.ConnectionId].firstview(html);
return Clients.tally(_connections.Count.ToString());
}
これはwinappで機能しますが、実行時にページ上のすべてのSignalを壊し、結果を返しません。たぶん、やるべきではないことをしているので、聞いてみようと思いました。