我想为Categories和SubCategories创建一个表。
还会有其他列,例如CategoriesName和SubCategoriesName。
在前端实现此功能时,我希望正确填充每个类别和子类别的数据。
答案 0 :(得分:0)
您可以执行以下操作
1-从ms-sql端创建表
create table [dbo].[categories](
id int identity(1,1) not null,
name nvarchar(50) not null,
parent int null,
constraint [pk_categories] primary key clustered ( id asc))
go
alter table [dbo].[categories] with check add constraint [fk_subcategories] foreign key(parent)
references [dbo].[categories] ([id])
go
alter table [dbo].[categories] check constraint [fk_subcategories]
go
上面的代码将为您创建一个名为categories的表,它包含一个父字段,用于构建类别及其子类别之间的关系
2-来自asp.net(假设你使用的是asp.net应用程序)
添加一个页面并放入2个下拉列表并调用它们:categoryDropDownList和subCategoryDropDownList并添加GridView并将其命名为dataGridView
3-在页面代码上进行以下操作以填充第一个下拉列表
var sql="Select * from dbo.categories where parent is null";
var connection=new System.Data.SqlClient.SqlConnection("Your connectionstring");
var adapter=new System.Data.SqlClient.SqlDataAdapter(sql,connection);
var table =new DataTable();
adapter.Fill(table);
categoryDropDownList.DataSource=table;
catagoryDropDwonList.Databind();
4-选择catagoryDropDownList的索引更改以填充第二个下拉列表,您执行以下操作:
var sql=string.Format("Select * from dbo.categories where parent={0}",categoryDropDownList.SelectedIndex);
// here you are calling to retrieve all the categories with parent from the category dropdown list, which means you will get all sub categories of the selected category from category list
var connection=new System.Data.SqlClient.SqlConnection("Your connectionstring");
var adapter=new System.Data.SqlClient.SqlDataAdapter(sql,connection);
var table =new DataTable();
adapter.Fill(table);
subCategoryDropDownList.DataSource=table;
subCatagoryDropDwonList.Databind();
5-选择索引更改subCatagoryDropDownList你做必要的编码来填充datagrid
希望这会对你有所帮助