-1
セッション内にSQLクエリを埋め込むという問題があります。私はSQLクエリでページをロードしたい。ユーザーが5つ以上のレコード数を持つ場合、メッセージをスローします。これどうやってするの?私の質問は以下のようです。レスポンスありがとう。そのセッション内にSQLクエリを埋め込むasp.net
protected void Page_Load(object sender, EventArgs e)
{
if(Session["User"] != null)
{
user = Session["User"] as User;
}
else
{
pnlgiris.Visible = false;
ScriptManager.RegisterStartupScript(this, this.GetType(), "redirect",
"alert('Please login first'); window.location='" +
Request.ApplicationPath + "Home.aspx';", true);
}
}
よう
マイページのロードには、私はセッション内でこのクエリを埋め込みたいです。これは、構築する恐ろしい方法です
var sb = new StringBuilder();
sb.Append("SELECT Users.UserName,");
sb.Append("COUNT(Book.BookName) ";
sb.Append("FROM Users ");
sb.Append("JOIN Book ON Users.UserId = Book.UserId ");
sb.Append("GROUP BY Users.UserName ");
sb.Append("HAVING COUNT(*) < 5;");
Session["SomeSql"] = sb.ToString();
:
+演算子を使用すると、すべての連結に対して新しい文字列が作成され、StringBuilderでは連結文字列が作成されないことは誰もが知っているので、あなたは確かに初心者の開発者です。 – Gregg
[連結は、ある文字列を別の文字列の末尾に追加する処理です。 +演算子を使用して文字列リテラルまたは文字列定数を連結すると、コンパイラは単一の文字列を作成します。実行時連結が発生しません。](https://msdn.microsoft.com/en-us/library/ms228504.aspx) – Crowcoder