我在我的网站上有一张桌子,我希望每个用户都能得到一张他可以自己编辑的空桌子,并在他登录时为他显示。
对于每个用户,同一个表但具有属于他的不同值,他可以编辑它。
编辑和表工作正常但问题是所有用户都看到具有相同值的同一个表。
答案 0 :(得分:0)
而不是创建会话。您可以在数据库的UserProfile表中创建用户行,以保存其值。
然后当他登录时,使用他的UserId创建一个动态URL,如
www.example.com/userid/1234
Stack Overflow使用完全相同的东西。他们使用您的ID并向您显示与您自己的ID相关的数据。他们使用Database来存储Profile的数据等。
表和数据之间唯一不同的是使用条件。在SQL中,它被称为WHERE
子句,在编码中称为if (condition == value) { }
。使用此条件分隔值,如此
var db = Database.Open("database_name");
var sqlQuery = "SELECT * FROM table WHERE UserId =@0";
var result = db.Query(sqlQuery, WebSecurity.CurrentUserId);
这将仅返回与登录用户相关的列。然后,您可以像这样循环遍历此结果
foreach (var row in result) {
// create the table here!
}
http://www.asp.net/web-pages/tutorials/data/5-working-with-data