我遇到一个问题,即每个ID只会在表格中添加1个项目。
我有2个表,第一个Data.Mærke
包含组说明的ID和名称,第二个Data.Hjuldata
包含Data.Mærke
的ID和项目的ID以及所有项目
字符串
string connStrings = ConfigurationManager.AppSettings["Sql"];
string Data = @"Select ps.Mærket AS SubCategoryName, P.DataID, P.Billed, P.Model, P.Årgang, P.[Motor Type], P.Krydsmål, P.Centerhul, P.Møtrikker, P.Bolter, P.Dæk, P.Fælge from Data.Hjuldata P inner join Data.Mærke PS on P.DataID = PS.MærkeID";
代码
public MainWindow()
{
InitializeComponent();
BindData();
ICollectionView dataView = CollectionViewSource.GetDefaultView(hjuldata.ItemsSource);
dataView.GroupDescriptions.Add(new PropertyGroupDescription("SubCategoryName"));
}
private void BindData()
{
hjuldata.ItemsSource = RetrieveProductsbySubCat().Tables[0].DefaultView;
}
public DataSet RetrieveProductsbySubCat()
{
//SQL statement to fetch entries from products
DataSet dsProducts = new DataSet();
//Open SQL Connection
using (SqlConnection conns = new SqlConnection(connStrings))
{
conns.Open();
//Initialize command object
using (SqlCommand cmds = new SqlCommand(Data, conns))
{
SqlDataAdapter adapters = new SqlDataAdapter(cmds);
//Fill the result set
adapters.Fill(dsProducts);
}
}
return dsProducts;
}
答案 0 :(得分:1)
看起来您在查询中加入了错误的列,请尝试以下操作:
Select ps.Mærket AS SubCategoryName, P.DataID, P.Billed, P.Model,
P.Årgang, P.[Motor Type], P.Krydsmål, P.Centerhul, P.Møtrikker,
P.Bolter, P.Dæk, P.Fælge
from Data.Hjuldata P
join Data.Mærke PS
on P.MærkeID = PS.MærkeID;
您尝试加入原始查询中的P.DataID = PS.MærkeID
。这似乎不正确。