我有一个ASP.NET项目,想要创建一个页面,我的系统管理员可以在其中修改数据库表数据(插入,更新和删除行)。
首先,我有一个基于数据库中表格的数据绑定下拉列表:
DdlTable.DataSource = from x in dc.Mapping.GetTables()
orderby x.TableName.Replace("dbo.", "")
select new {TableName = x.TableName.Replace("dbo.", "")};
DdlTable.DataTextField = "TableName";
DdlTable.DataValueField = "TableName";
DdlTable.DataBind();
DdlTable.Items.Insert(0, "Select a Table");
接下来,我希望在选择时绑定到表的gridview(或其他一些数据对象),并具有动态构建的列,插入,更新和删除功能。这可以在不编码每个特定表格的情况下完成吗?
显然,我可以创建x个网格视图和数据源,但我希望它是动态构建的,以实现灵活性和最小编码。
基本上,我想要一个简单的基于Web的SQL管理器。
答案 0 :(得分:0)
...试
为每个表创建一个单独的数据源(在代码或标记中,无所谓)。
确保在页面加载时gridview没有设置数据源。
在某些事件上(单击按钮,选择下拉列表等),将gridview的数据源设置为下拉列表中选择的任何数据源,确保autogenerate = true,然后是databind()。
答案 1 :(得分:0)
简而言之 - 不 - 你改变你的牌桌,你必须改变你的牌桌 - 没有灵丹妙药。
你可以试试像CodeSmith这样的东西。或者你可以自己写一些东西 - 不应该太难,是吗?查询表的字段的InformationSchema视图,并获得在代码隐藏中构建函数以生成CRUD语句所需的所有信息。