【问题标题】:Visual studio is hanging when add a new dataset to RDLC report将新数据集添加到 RDLC 报表时,Visual Studio 挂起
【发布时间】:2016-12-10 15:17:55
【问题描述】:

我创建了一个特定的report.rdlc,然后我想将新的datatable 添加到我的报告中。

但更改数据集后,尝试将新数据集添加到我的报告中。

Visual Studio 每次都崩溃并在不添加新数据集的情况下重新启动!

我搜索了这个错误,根据Microsoft,它说:

这是 Visual Studio 中最古老的错误之一,它很容易 使 Visual Studio 的“所有版本”崩溃(这是 VS.nET 2015 更新 1 现在)。当您将项目移动到另一个目录时会发生这种情况 并且报表查看器组件尝试从以前打开数据集架构 地点。为了使用文本编辑器修复这个打开的 rdlc 文件。看 对于名为“SchemaPath”的属性并更新数据集的路径 文件。


我做了这个建议,然后清理项目并重建它,但同样的问题!如何解决这个问题?

<rd:DataSetInfo>
        <rd:DataSetName>AnalysisDS1</rd:DataSetName>
        <rd:SchemaPath>N:\ProjData\FinanceList\FinanceList\Finance\App_Code\AnalysisDS1.xsd</rd:SchemaPath>
        <rd:TableName>AnalysisDT1</rd:TableName>
        <rd:TableAdapterFillMethod />
        <rd:TableAdapterGetDataMethod />
        <rd:TableAdapterName />
</rd:DataSetInfo>

【问题讨论】:

  • 更新到VS2015的Update 3,看看是否仍然崩溃
  • 在我的例子中,我有一些旧的未使用的数据源来自旧版本的项目。该项目当时甚至没有使用报表查看器。然后我删除了,问题也被删除了。感谢 Microsoft 论坛的提示!

标签: c# visual-studio reporting-services visual-studio-2015 rdlc


【解决方案1】:

到目前为止,V.S 中的这个 bug 还没有修复,希望 Microsoft 修复这个持续存在的问题。


解决方法:

我在我的解决方案中添加一个新项目,然后将我的 RDLC 拖放到我的新项目中,然后添加一个新数据集,完成我的报告并再次将其拖到原来的位置项目,一切顺利。

【讨论】:

  • 我刚刚遇到了这个问题,需要创建一个报告。这是唯一对我有用的解决方案。
  • Geezzz...早该看到这个问题了。一直在为这个问题动脑筋。
【解决方案2】:

尝试删除 .vs 或 bin 和 obj 仍然无法正常工作,但是当我尝试删除我的数据源连接并添加新连接时,它对我有用。

【讨论】:

  • 它对我有用。我尝试删除 .vs 文件夹和 .suo 文件,然后清理并以发布模式构建。
【解决方案3】:

我也面临同样的问题。为了解决这个问题,在我的案例中,有两个步骤如下:

1st:打开“Event Viewer”,这是windows的默认选项。在这个“事件查看器”中 您将找出发生此问题的实际原因。 2nd:从控制面板卸载“水晶报告”。卸载水晶后 报告我的问题已解决。

【讨论】:

    【解决方案4】:

    解决方案在这里... 打开项目目录=>Properties=>DataSources 并删除该文件夹中的所有文件... 它的工作原理

    【讨论】:

    • 这在 VS2019 中为我们工作,并进行了干净的构建
    【解决方案5】:

    这个错误很难解决,但在我们的项目中,我们有几个解决方案和/或解决方法。

    通常您会在这样的事件查看器中收到 2 条不太有用的消息

    第一条消息:

    错误应用程序名称:devenv.exe,版本:15.9.28307.423,时间 戳:0x5c5b5342 故障模块名称:未知,版本:0.0.0.0, 时间戳:0x00000000 异常代码:0xc0000005 故障偏移: 0x49e07264 错误进程 id: 0x3e4c 错误应用程序启动 时间:0x01d5ab734dee5790 错误应用程序路径:C:\Program Files (x86)\Microsoft Visual Studio\2017\Enterprise\Common7\IDE\devenv.exe 错误模块路径:未知报告 ID: 93b01c49-4490-41a4-a8db-142f6a99697a 故障包全名: 错误的包相关应用程序 ID:

    第二条消息:

    应用程序:devenv.exe 框架版本:v4.0.30319 描述: 由于未处理的异常,进程被终止。异常信息: System.NullReferenceException 在 Microsoft.ReportDesigner.Design.ProjectItemUtil.GetComplexElements(System.Xml.Schema.XmlSchemaElement) 在 Microsoft.ReportDesigner.Design.DesignUtil.GetVenusObjectDataSources(System.Xml.Schema.XmlSchema[], System.IServiceProvider) 在 Microsoft.ReportDesigner.Data.Local.DataSetSynchronizer+d__11.MoveNext() 在 Microsoft.ReportDesigner.Data.Local.DataSetSynchronizer+d__7.MoveNext() 在 Microsoft.ReportDesigner.Data.Local.Dialogs.Pages.DataSetGeneralPage.LoadDataSources() 在 Microsoft.ReportDesigner.Data.Local.Dialogs.Pages.DataSetGeneralPage.LoadData() 在 Microsoft.ReportDesigner.Data.Local.Dialogs.DataSetDialog.OnLoad(System.EventArgs) 在 System.Windows.Forms.Form.OnCreateControl() 在 System.Windows.Forms.Control.CreateControl(Boolean) 在 System.Windows.Forms.Control.CreateControl() 在 System.Windows.Forms.Control.WmShowWindow(System.Windows.Forms.Message ByRef)在 System.Windows.Forms.Control.WndProc(System.Windows.Forms.Message ByRef)在 System.Windows.Forms.ScrollableControl.WndProc(System.Windows.Forms.Message ByRef)在 System.Windows.Forms.ContainerControl.WndProc(System.Windows.Forms.Message ByRef)在 System.Windows.Forms.Form.WmShowWindow(System.Windows.Forms.Message ByRef)在 System.Windows.Forms.Form.WndProc(System.Windows.Forms.Message ByRef) 在 System.Windows.Forms.Control+ControlNativeWindow.OnMessage(System.Windows.Forms.Message ByRef)在 System.Windows.Forms.Control+ControlNativeWindow.WndProc(System.Windows.Forms.Message ByRef) 在 System.Windows.Forms.NativeWindow.DebuggableCallback(IntPtr, Int32, IntPtr, IntPtr)

    解决问题的方法:

    1. 对于我们中的一些人来说,问题 microsoft.office.sharepoint.tools.dll 是一个 DLL 引用。因此过程是查看最近添加到 TFS 的 DLL,并尝试将它们从项目中一一删除,然后尝试再次添加数据集。这解决了我们团队大多数人的问题。

    2. 有时,解决方案 1 还不够,在我的情况下,我从 TFS 的修复程序中获得了最新版本,但我仍然遇到问题。所以解决方案是从 \Project\package\ 文件夹中删除所有内容,全部保存并重新构建。这为我解决了这个问题。所以即使引用消失了,包仍然存在。

    3. 这是一种解决方法,但就像人们在此处所说的那样,您需要将一个新项目添加到您的解决方案中并创建您的 rdlc 报告和数据集。这很好用,但不是很好,因为之后您需要将报告复制到正确的项目并更改 .xsd(数据集的)和 .rdlc 文件的内容,以便它们指向正确的路径。

    4. 这个很明显,但是你需要检查数据集、模式、数据库连接的路径是否都指向 .xsd 和 .rdlc 文件中的正确路径。

    【讨论】:

      【解决方案6】:

      这在 VS2017 中发生在我身上。我能够通过首先删除包含.rdlc 的项目的/bin/ 和/obj/ 文件夹中的所有内容来解决此问题。

      具体来说,打开“数据集属性”窗口时似乎抛出了 FileIOException,并且似乎无法打开 /obj/ 文件夹中的一个或两个文件,因为它们正被另一个进程使用:

      DesignTimeResolveAssemblyReferences.cache DesignTimeResolveAssemblyReferencesInput.cache

      我不明白为什么有时/bin/ 也需要被清除,但最好是安全地清除两者。

      【讨论】:

        【解决方案7】:

        同样的问题发生在我身上。我刚刚完成了以下步骤,并且适用于 vs2015。

        1. Build=> 在调试模式下清理解决方案。
        2. Build=> 发布模式下的清洁解决方案。

        【讨论】:

          【解决方案8】:

          这可以与其他问题相关联吗? vs 2019 crashes without any error report when opening solution

          修复 VS 解决了这个问题。值得一试;)

          【讨论】:

            猜你喜欢
            • 2015-04-10
            • 1970-01-01
            • 2018-12-10
            • 2012-06-16
            • 2016-08-12
            • 1970-01-01
            • 2020-11-03
            • 2017-12-16
            • 1970-01-01
            相关资源
            最近更新 更多