C# 修复gridview中的数据属性名称

C# 修复gridview中的数据属性名称,c#,datagrid,C#,Datagrid,我有两张桌子: 表1:姓名、家庭、城市ID 表2:城市ID,城市名称 我有一个gridview,它的数据源是: 从table1、table2中选择*其中table1.cityID=table2.cityID SELECT name,family,cityName from table1 INNER JOIN table2 ON table1.cityID = table2.cityID 我禁用自动创建列 我向datagrid添加了3列 在第一列中,我将数据属性名称固定为name 在第二列中,

我有两张桌子:

表1:姓名、家庭、城市ID 表2:城市ID,城市名称

我有一个gridview,它的数据源是: 从table1、table2中选择*其中table1.cityID=table2.cityID

SELECT name,family,cityName from table1 INNER JOIN table2 ON table1.cityID = table2.cityID 
我禁用自动创建列

我向datagrid添加了3列

在第一列中,我将数据属性名称固定为name 在第二列中,我将数据属性名称固定为family 但在第三列中,当我将数据属性名称修改为table2.cityName时,它就不起作用了

我想在第三列显示城市名称


这是一个例子,但事实上,我在我使用的另一个表中有cityName,如果我只使用cityName,就会出错

有人能帮我吗? 谢谢…

您不需要编写table2.cityName,只需编写cityName,它就会工作。

尝试更改 从table1、table2中选择*其中table1.cityID=table2.cityID

SELECT name,family,cityName from table1 INNER JOIN table2 ON table1.cityID = table2.cityID 

从表1中选择table1.name作为名称,table1.family作为族,table2.cityName作为城市,其中table1.cityID=table2.cityID

SELECT name,family,cityName from table1 INNER JOIN table2 ON table1.cityID = table2.cityID 

当您在两个表上使用city ID进行内部联接时,..U将获得名称为citynames的匹配表ID

而不提供table2.cityName只需提供cityName作为第三列的DataPropertyName。您使用哪种方式获取数据源?简单查询、存储过程还是实体框架?可能会出现类似于1的问题在选定集合中重命名列2在表1中有另一列使用此名称这是一个示例,但事实上,我在使用的另一个表中有cityName,如果我仅使用cityName,则会出错这是一个示例,但事实上,我在使用的另一个表中有cityName,如果我仅使用cityName,每次出错您可以将一个源绑定到一个Girdview,例如DataTable,尝试将所有列放入一个源中,然后使用cityName。谢谢您的回答,但这是一个示例,我有许多列无法全部重命名好的。。然后我根据我的经验给出一些提示,如果在查询中使用join,那么全选可能是错误的方法。如果无法重命名所有列,请尝试逐个选择。。希望这对你有帮助