小编use*_*808的帖子

存储数据集的位置? - ASP.NET中的会话或缓存

刚刚登上asp.net船.

我有一个asp.net页面,最初在带有分页的gridview中显示一些数据(数据集作为其数据源).而且,几乎没有文本框可以执行插入或更新(不要询问gridview本身的编辑/插入选项!!).

关于存储数据集的正确位置,我需要很少的指导.

我发布了简化的代码隐藏文件,它使用viewstate存储数据集,我不喜欢.

enter code here

class xyx : Page
{
protected void Page_Load(object sender, EventArgs e)
{
    if (!IsPostBack)
    {
    GridBind();

    }

}
protected void InsertUpdateButton_Click(object sender, EventArgs e)
{
 1.perform insert or update data in the database

 2.GridBind();


}
protected void GridView1_PageIndexChanged(object sender, EventArgs e)
{
    GridView1.PageIndex = e.NewPageIndex;
    GridView1.SelectedIndex = -1;
    GridView1.DataSource = (DataSet)ViewState["DataSet"];
    GridView1.DataBind();

}


private void GridBind()
{
     DataSet ds = getDataFromDataBase();
     GridwView1.DataSource = ds;
     GridView1.DataBind();
     ViewState["DataSet"] = ds;

}
}
Run Code Online (Sandbox Code Playgroud)

现在除了viewstate之外,存储数据集的最佳选择是什么?...

  1. 每次都从数据库中获取数据

  2. 对所有页面中的所有数据集使用公共会话变量Session …

asp.net session caching

1
推荐指数
1
解决办法
7691
查看次数

从两个表中选择数据而不加入

这是交易:

表A具有列A1和A2

表B具有列B1,B2,B3

现在我想从列A1和B1(没有连接)中选择数据,条件是: -

B3 ='someword',A2 = B2

如果不需要打印B1,我会将查询(不加入)写成:

select A1 from A where A2 in (select B2 from B where B3='someword');
Run Code Online (Sandbox Code Playgroud)

但我需要打印A1和B1,所以有可能不使用连接和使用'IN'???

mysql sql

-5
推荐指数
2
解决办法
2814
查看次数

标签 统计

asp.net ×1

caching ×1

mysql ×1

session ×1

sql ×1