4

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

在 ReportData 面板中,我尝试过:

右键单击数据源,然后单击刷新。右键单击数据集,然后单击刷新

两者都没有使新列显示在可用列的列表中。

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

4

7 回答 7

4

因为我只是遇到了同样的问题,并且建议的答案都没有帮助......

您也可以在 XML 中添加字段。右键单击报告并选择Open with...,选择XML (Text)-Editor。现在查找标签并在分支内<DataSets>添加一个新标签。例如,您刚刚将该列添加到您的数据集中,该数据集中以前包含和。您可以这样编辑 XML:<Field><Fields>TestFieldName1FieldName2

<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>

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

于 2015-11-11T16:42:51.943 回答
2

在“报告数据”窗口中,您是否看到“数据集”部分?尝试刷新这些数据集。还要确保源正确绑定并使用正确的名称。

于 2013-07-10T16:24:04.120 回答
1

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

于 2013-07-10T07:21:34.140 回答
1

我遇到了同样的问题。

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

在您的解决方案中找到此 aquivo 后,通过双击打开方式设计器。

该文件是您的数据源,它可以包含您的查询、表格、程序,通过单击鼠标右键搜索与您要更新的报表(DataSet)相关的查询,在“配置...”选项中选择下一个结果窗口选择您的查询字段应该出现在块前进,然后只需单击完成。

回想一下,使用存储过程制作了这个过程,并且这已经在我的数据库中进行了更新。

于 2016-08-02T12:51:28.337 回答
0

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

于 2013-07-10T06:44:48.097 回答
0

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

  1. 重新打开您的视觉工作室以及您的项目。

  2. 然后按 Ctrl + Alt + D 打开报表数据窗口

  3. 扩展数据源刷新你想要的

  4. 扩展数据集刷新你想要的

现在好了。快乐编码。

于 2018-09-20T04:29:52.783 回答
0

转到属性,新选择源类

于 2019-02-12T11:26:19.943 回答