C# 在ReportViewer中刷新数据集中的字段

C# 在ReportViewer中刷新数据集中的字段,c#,winforms,reportviewer,C#,Winforms,Reportviewer,我有一个WinForms应用程序,是用VS2012编写的。 它从我的SQL Server数据库的视图中获取数据。 我在视图中添加了一个新列,但找不到让ReportViewer数据集查看新列的方法 在ReportData面板中,我尝试: 右键单击数据源,然后单击刷新。 在数据集上单击鼠标右键,然后单击“刷新” 两者都不能在可用列列表中显示新列 如何在VS2012内的报表设计器中显示列?不确定这是否正确,但我知道当使用.dbml设计器连接数据库时,当我更改数据库中对象的架构时,我必须刷新服务器浏览器

我有一个WinForms应用程序,是用VS2012编写的。 它从我的SQL Server数据库的视图中获取数据。 我在视图中添加了一个新列,但找不到让ReportViewer数据集查看新列的方法

在ReportData面板中,我尝试:

右键单击数据源,然后单击刷新。 在数据集上单击鼠标右键,然后单击“刷新”

两者都不能在可用列列表中显示新列


如何在VS2012内的报表设计器中显示列?

不确定这是否正确,但我知道当使用.dbml设计器连接数据库时,当我更改数据库中对象的架构时,我必须刷新服务器浏览器,将对象放置在设计图面上,然后将对象重新添加到设计图面。它不会自动更新dbml中的模式

我通常删除包含数据集的xsd文件,然后从头开始重新创建它。然后可以刷新ReportData面板以查看新列。

在Report Data窗口中,是否看到“数据集”部分?尝试刷新这些数据集。另外,请确保源文件已正确绑定并使用正确的名称。

因为我刚刚遇到了同样的问题,而且建议的答案都没有帮助

也可以在XML中添加字段。右键单击报告并选择
openwith…
,选择
XML(Text)-Editor
。现在查找标记
,并在
分支中添加一个新的
。例如,您刚刚将列
Test
添加到数据集中,该数据集以前包含
FieldName1
FieldName2
。您可以按如下方式编辑XML:

<DataSets>
  <DataSet Name="YourDataSet">
    <Fields>
      <Field Name="FieldName1">
       <DataField>FieldName1</DataField>
       <rd:TypeName>System.YourType</rd:TypeName>
      </Field>
      <Field Name="FieldName2">
       <DataField>FieldName2</DataField>
       <rd:TypeName>System.YourType</rd:TypeName>
      </Field>
      <Field Name="Test">
       <DataField>Test</DataField>
       <rd:TypeName>System.YourType</rd:TypeName>
      </Field>
    </Fields>
  </DataSet>
</DataSets>

字段名1
System.YourType
字段名2
System.YourType
试验
System.YourType

现在保存XML并在报表设计器中再次打开它。您现在应该可以选择新字段并将其添加到报告中。

我也遇到了同样的问题

我通过以下过程解决了问题: 在您的项目中找到文件“.xsd”,它引用了整个项目 报告中使用的数据(数据源)

在您的解决方案中找到此aquivo后,双击此按钮打开way designer

此文件是您的数据源。它可以包含您的查询、表格、过程,搜索与您要更新的报告(数据集)相关的查询。单击鼠标右键,选择下一个结果窗口中的“配置…”选项选择您的查询字段应出现在前向块上,然后单击finish


回想一下,我用存储过程完成了这个过程,并且这个过程已经在我的数据库中更新了。

1。从项目BIN和Obj文件夹中删除所有内容和文件夹

  • 重新打开visual studio以及项目

  • 然后按Ctrl+Alt+D打开报告数据窗口

  • 展开数据源刷新所需的数据源

  • 展开数据集刷新所需的数据集


  • 现在没事了。快乐编码。

    转到属性,选择新的源类

    尝试ReportViewer任务智能标记面板上的“重新绑定数据源”任务,以更新应用程序代码中的数据绑定。请确保您接受我经常遇到的答案。唯一一个在所有地方都有效的!