gridview连接数据时,表格名称为参数,请问改如何写

qq_35213431 2016-07-01 12:46:22
<asp:SqlDataSource ID="SqlDataSource1" runat="server"
ConnectionString="<%$ ConnectionStrings:DatabaseConnectionString1 %>"
SelectCommand="SELECT * FROM [TableName]"></asp:SqlDataSource>


这其中的表格名称TableName是一个参数,需要动态引用,请问该如何写,小弟刚学不久,请赐教

例如string TableName =“test” 如果按照现在写法,他会去找这个TableName的表,而不是TableName所代表的test这张表。
...全文
193 14 打赏 收藏 转发到动态 举报
写回复
用AI写文章
14 条回复
切换为时间正序
请发表友善的回复…
发表回复
  • 打赏
  • 举报
回复
相反地他会方案那些千篇一律copy --> 相反地他会反感那些千篇一律copy 尽管理解一些“声明性的开发方式”需要付出学习代价,但是他会觉得值得。因为他要的是一下子就获得10倍的“设计”效率,而不是花费大量时间去练习一点点对底层基础代码的熟练copy的那种“技术”。
  • 打赏
  • 举报
回复
就好比盖楼,有的人认为看到自己一块砖一块瓦辛苦堆砌上去的东西觉得很直观很舒服,而有的人是站在建筑工程师、监理师的角度来组织代码结构的,这两种人的开发就会截然不同。我还是建议你从尽量不写代码的角度去理解软件设计。当一个框架真的有问题了,你就要换一个框架。但是不是说因此就说“越是低级手工编写代码的东西越显得高级”,不是的。实际上这时候你要换一个效率更高的框架,换框架的结果,你还是要尽量站在监理师、设计师的角度的去看自己的代码,而不是站在建筑工人的角度去看。非常了解软件框架的人不会对着几百处几乎copy的代码而孤芳自赏,相反地他会方案那些千篇一律copy(只改一丁点内容)的代码。非常了解编程框架的人,反而不爱写代码,而喜欢搞测试、管理质量。不太了解编程的人喜欢编写代码,而害怕技术领导管理自己,不注重质量。
  • 打赏
  • 举报
回复
你完全可以使用 ObjectDatasource 解决这类 SqlDataSource 使用上的问题。因为 ObjectDatasource 是通用的、分层的,将页面设计跟业务查询层分离开来。例如 http://www.xuebuyuan.com/2004161.html 所示,它的方法 GetEmployeesByHiredDateMonth 方法需要传入参数,于是使用
    <SelectParameters>
        <asp:Parameter Name="month" Type="Int32" />
    </SelectParameters>
来定义其输入参数的自动化绑定。不仅仅1个参数,可以有多个参数。至于查数据库还是文件,还是通过webservice访问,等等方式,你完全可以根据传入的参数再来随便设计。 趁这个机会,将 SqlDatasource 改为 ObjectDataSource !
还想懒够 2016-07-04
  • 打赏
  • 举报
回复
引用 8 楼 jjkk168 的回复:
[quote=引用 7 楼 qq_35213431 的回复:] 到时绑定好了,能显示,只是这样一来原来可以做的编辑啥的都不行了,都需要重新写吧?? [quote=引用 4 楼 jjkk168 的回复:] 后台代码


using(SqlConnection conn = new SqlConnection("连接字符串")
{
conn.Open();
string strSQL = "Select * From 表 Where 条件";
SqlDataAdapter da = new SqlDataAdapter(strSQL,conn);
DataTable dt = new DataTable();
da.Fill(dt);

GridView1.DataSource = dt;
GridView1.DataBind();
}

[/quote] 真心不建议使用SqlDataSource,麻烦透顶,本来一个简单的东西非得弄得特别复杂。开发基于数据库的软件,大多数的时候前端动作都是在拼接SQL语句,而这个SqlDataSource让这个SQL语句变得异常不直观。 http://www.cnblogs.com/yinhaiming/articles/1421570.html[/quote] 另外建议去掌握一些ORM的东西(这类工具很多,但我个人很反感iBatisNET,也是一个异常麻烦的工具),另外还可以去掌握一下Linq to SQL
还想懒够 2016-07-04
  • 打赏
  • 举报
回复
引用 7 楼 qq_35213431 的回复:
到时绑定好了,能显示,只是这样一来原来可以做的编辑啥的都不行了,都需要重新写吧?? [quote=引用 4 楼 jjkk168 的回复:] 后台代码


using(SqlConnection conn = new SqlConnection("连接字符串")
{
conn.Open();
string strSQL = "Select * From 表 Where 条件";
SqlDataAdapter da = new SqlDataAdapter(strSQL,conn);
DataTable dt = new DataTable();
da.Fill(dt);

GridView1.DataSource = dt;
GridView1.DataBind();
}

[/quote] 真心不建议使用SqlDataSource,麻烦透顶,本来一个简单的东西非得弄得特别复杂。开发基于数据库的软件,大多数的时候前端动作都是在拼接SQL语句,而这个SqlDataSource让这个SQL语句变得异常不直观。 http://www.cnblogs.com/yinhaiming/articles/1421570.html
还想懒够 2016-07-04
  • 打赏
  • 举报
回复
引用 10 楼 qq_35213431 的回复:
大哥是否方便qq指导一下,真是万分感谢啊,129362 [quote=引用 9 楼 jjkk168 的回复:] [quote=引用 8 楼 jjkk168 的回复:] [quote=引用 7 楼 qq_35213431 的回复:] 到时绑定好了,能显示,只是这样一来原来可以做的编辑啥的都不行了,都需要重新写吧?? [quote=引用 4 楼 jjkk168 的回复:] 后台代码


using(SqlConnection conn = new SqlConnection("连接字符串")
{
conn.Open();
string strSQL = "Select * From 表 Where 条件";
SqlDataAdapter da = new SqlDataAdapter(strSQL,conn);
DataTable dt = new DataTable();
da.Fill(dt);

GridView1.DataSource = dt;
GridView1.DataBind();
}

[/quote] 真心不建议使用SqlDataSource,麻烦透顶,本来一个简单的东西非得弄得特别复杂。开发基于数据库的软件,大多数的时候前端动作都是在拼接SQL语句,而这个SqlDataSource让这个SQL语句变得异常不直观。 http://www.cnblogs.com/yinhaiming/articles/1421570.html[/quote] 另外建议去掌握一些ORM的东西(这类工具很多,但我个人很反感iBatisNET,也是一个异常麻烦的工具),另外还可以去掌握一下Linq to SQL[/quote][/quote] 当你需要新增的时候,后台就根据前端的数据拼一个Insert语句,如果需要更新,就拼一个Update语句,如果需要删除,就拼接一个Delete语句出来。最终再去影响数据库中的值即可。
qq_35213431 2016-07-04
  • 打赏
  • 举报
回复
大哥是否方便qq指导一下,真是万分感谢啊,129362
引用 9 楼 jjkk168 的回复:
[quote=引用 8 楼 jjkk168 的回复:] [quote=引用 7 楼 qq_35213431 的回复:] 到时绑定好了,能显示,只是这样一来原来可以做的编辑啥的都不行了,都需要重新写吧?? [quote=引用 4 楼 jjkk168 的回复:] 后台代码


using(SqlConnection conn = new SqlConnection("连接字符串")
{
conn.Open();
string strSQL = "Select * From 表 Where 条件";
SqlDataAdapter da = new SqlDataAdapter(strSQL,conn);
DataTable dt = new DataTable();
da.Fill(dt);

GridView1.DataSource = dt;
GridView1.DataBind();
}

[/quote] 真心不建议使用SqlDataSource,麻烦透顶,本来一个简单的东西非得弄得特别复杂。开发基于数据库的软件,大多数的时候前端动作都是在拼接SQL语句,而这个SqlDataSource让这个SQL语句变得异常不直观。 http://www.cnblogs.com/yinhaiming/articles/1421570.html[/quote] 另外建议去掌握一些ORM的东西(这类工具很多,但我个人很反感iBatisNET,也是一个异常麻烦的工具),另外还可以去掌握一下Linq to SQL[/quote]
qq_35213431 2016-07-02
  • 打赏
  • 举报
回复
到时绑定好了,能显示,只是这样一来原来可以做的编辑啥的都不行了,都需要重新写吧??
引用 4 楼 jjkk168 的回复:
后台代码


using(SqlConnection conn = new SqlConnection("连接字符串")
{
conn.Open();
string strSQL = "Select * From 表 Where 条件";
SqlDataAdapter da = new SqlDataAdapter(strSQL,conn);
DataTable dt = new DataTable();
da.Fill(dt);

GridView1.DataSource = dt;
GridView1.DataBind();
}

还想懒够 2016-07-01
  • 打赏
  • 举报
回复
后台代码


using(SqlConnection conn = new SqlConnection("连接字符串")
{
conn.Open();
string strSQL = "Select * From 表 Where 条件";
SqlDataAdapter da = new SqlDataAdapter(strSQL,conn);
DataTable dt = new DataTable();
da.Fill(dt);

GridView1.DataSource = dt;
GridView1.DataBind();
}

全栈极简 2016-07-01
  • 打赏
  • 举报
回复
后台cs中获取到 SqlDataSource1.SelectCommand,然后重新赋值即可。
insus 2016-07-01
  • 打赏
  • 举报
回复
参考下面这个的第4,实现动态的SQL语句。 http://www.cnblogs.com/insus/p/4156735.html
qq_35213431 2016-07-01
  • 打赏
  • 举报
回复
感谢啊,但是如果使用控件,这东西怎么写啊。。? 谁知道啊?
EdsionWang 2016-07-01
  • 打赏
  • 举报
回复
用代码去绑定,不要用datasource控件了。

//大概下面这样一种思路,这样的话你想查什么数据,就写什么查询语句进去就好了
SqlConnection con = new SqlConnection("连接字符串");
SqlDataAdapter sda = new SqlDataAdapter("查询语句",con);
DataSet ds = new DataSet();
sda.Fill(ds);
gridview.DataSource = ds.Table[0];

62,272

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧