标签: rdlc

MVC 项目中的 .Rdlc 报告 - 托管调试助手“PInvokeStackImbalance”

我非常接近完成我的上一份报告并运行。我在任何其他报告中都没有遇到过这个问题。我正在尝试根据数据库记录创建报告。当我通过 LocalReport 创建报告并为报告创建参数时,我收到错误消息“托管调试助手‘PInvokeStackImbalance’:‘调用 PInvoke 函数‘Microsoft.ReportViewer.Common!Microsoft.ReportingServices.Rendering.ImageRenderer。 FontPackage::CreateFontPackage' 使堆栈不平衡。这可能是因为托管 PInvoke 签名与非托管目标签名不匹配。检查 PInvoke 签名的调用约定和参数是否与目标非托管签名匹配。这是我的 MVC 项目的 .rdlc 报告。记录是正确的并且值被插入但是当我去显示它/创建它时报告错误。在 'renderedBytes = localReport.Render(

/* TRACKER_TEST Database Connection ~ Debugging & Testing */
            TRACKER_TESTDataSet dataSet = new TRACKER_TESTDataSet();
            TRACKER_TESTDataSetTableAdapters.Service_Report_FieldsTableAdapter adapter = new TRACKER_TESTDataSetTableAdapters.Service_Report_FieldsTableAdapter();
            LocalReport localReport = new LocalReport();
            localReport.ReportPath = Server.MapPath("~/ReportForms/VirtualService2.rdlc");
            List<TRACKER_TESTDataSet.Service_Report_FieldsRow> report = new List<TRACKER_TESTDataSet.Service_Report_FieldsRow>();
            foreach(var row in list)
            {
                report.Add(adapter.GetDataBy(row.SN1, row.SN2).First());
            }
            ReportDataSource rds = new ReportDataSource("Service_Data", report);
            localReport.DataSources.Add(rds);


            // command specifies whether its a PDF EXCEL WORD IMAGE doc
            string reportType = command; …
Run Code Online (Sandbox Code Playgroud)

c# asp.net-mvc rdlc reporting-services

10
推荐指数
3
解决办法
8093
查看次数

如何强制报表查看器以打印预览模式显示

在Visual Studio 2005中,如何在Print-Preview模式下直接在ReportViewer控件中显示报表?

reportviewer visual-studio-2005 rdlc .net-2.0

9
推荐指数
1
解决办法
1万
查看次数

如何在RDLC报告上显示图像

我有一个RDLC报告,并希望此报告表格中的一列显示图像.我的报告的数据源是一个具有名为Image of type的属性的类System.Drawing.Image.

在我的报告中,我将图像控件拖到列上,然后设置以下属性:

MIMEType:  image/png
Source:  Database
Value:  =Fields!Image.Value
Run Code Online (Sandbox Code Playgroud)

当我运行我的报告时,我得到一个破碎的图像.

我真的很感激任何建议!

在此先感谢:o)

reportviewer rdlc .net-3.5

9
推荐指数
1
解决办法
1万
查看次数

Visual Studio 2010要求将在VS2008上创建的RDLC转换为RDLC 2008格式?

我在Visual Studio 2008上创建了我的项目,以及它上面的RDLC文件.但现在,当我在Visual Studio 2010上打开解决方案并想要打开RDLC文件时,它会向我显示警告.

那有点好笑.该报告是在VS2008上创建的,VS2010要求转换为2008格式.也许在我的VS2008安装中出现了一个问题,即使用一些古老的格式创建了RDLC文件(2005 ??!)

问题是,当您使用"确定"按钮确认时,执行一些设计调整并运行应用程序,它会在"主报表"上引发错误:

ex.InnerException
{"The definition of the report 'Main Report' is invalid."}
    [Microsoft.Reporting.DefinitionInvalidException]: {"The definition of the report 'Main Report' is invalid."}
    Data: {System.Collections.ListDictionaryInternal}
    HelpLink: null
    InnerException: {"The report definition is not valid.  Details: The report definition has an invalid target namespace 'http://schemas.microsoft.com/sqlserver/reporting/2008/01/reportdefinition' which cannot be upgraded."}
    Message: "The definition of the report 'Main Report' is invalid."
    Source: "Microsoft.ReportViewer.Common"
    StackTrace: "   at Microsoft.Reporting.ReportCompiler.CompileReport(CatalogItemContext context, Byte[] reportDefinition, Boolean generateExpressionHostWithRefusedPermissions, ReportSnapshotBase& snapshot)\r\n   at Microsoft.Reporting.StandalonePreviewStore.StoredReport.CompileReport()\r\n   at Microsoft.Reporting.StandalonePreviewStore.StoredReport.get_Snapshot()\r\n …
Run Code Online (Sandbox Code Playgroud)

reportviewer2008 rdlc visual-studio-2010 visual-studio-2008

9
推荐指数
3
解决办法
3万
查看次数

RDLC表达式扩展方法

是否可以为RDLC字段后面的表达式编写扩展方法?

例如,假设我的数据源中有一个DateTime字段,该字段可能具有有效值,也可能为null.我将TextBox拖放到我的RDLC上,并使用ToShortDateString()方法格式化其值.这适用于填充的DateTime值,但如果我尝试在NULL字段上执行.ToShortDateString(),这显然也会在运行时抛出异常.

我想知道我是否可以编写一个可以在我的RDLC表达式中使用的扩展方法,这样当我处理?DateTime值时,我可以调用类似.ConvertFromNullToEmptyString()的方法.

当然还有其他方法可以解决这个问题,但我想知道在RDLC表达式中使用的扩展方法是否可能是解决我的业务问题的方法.

谢谢大家!

expression rdlc reporting-services ssrs-expression

9
推荐指数
1
解决办法
2882
查看次数

RDLC和SSRS之间的区别

本地/ Web数据报告(RDLC)和SSRS之间有什么区别?

asp.net rdlc reporting-services

9
推荐指数
1
解决办法
2万
查看次数

如何在表达式窗口(本地报表)中引用文本框的值?

通过右键单击文本框 - >选择表达式,表达式窗口不需要是可以打开的表达式窗口.文本框具有一些表达式窗口,这些窗口是与字体相关的表达式窗口,与对齐相关的表达式窗口,与可见性相关的表达式窗口,与边界相关的表达式窗口以及与值相关的表达式窗口.

在与值相关的表达式窗口中,我不需要引用当前文本框的值,因为它正是表达式用于文本框的值.但是我想知道是否有办法在文本框的其他表达式窗口中引用此值?或者只是使用文本框的确切值表达式?

例如,文本框的值表达式=Fields!ID.Value在另一个表达式窗口(例如,颜色表达式窗口)中,我希望通过某个关键字引用此值,如果可能的话=IIF(this.Value > 0, "Green", "Red").目前我必须使用文本框的确切表达式,其颜色的表达式如下所示=IIF(Fields!ID.Value > 0, "Green", "Red").

我希望有一种简单的方法可以引用当前文本框的值,而不是通过它的确切表达式,因为有时表达式太长而无法重新键入它,甚至复制 - 粘贴表达式并不比短关键字更好.

谢谢!

c# report rdlc localreport winforms

9
推荐指数
1
解决办法
1万
查看次数

如何在WPF项目中将rdlc文件添加到ReportViewer

我通过主窗口的设计者ReportViewerWPF应用程序中添加了一个XAML,我想添加一个现有的rdlc文件.

我希望我的reportviewer在启动时显示一个空的rdlc文件(没有参数),稍后从我的datagrid中选择一行(绑定到observablecollection)相应地更改其参数并显示填充的报告定义而不是空的报告定义.

我将创建一个按钮,将所选行作为命令参数和相关事件以及所有内容,我只需要能够将数据传递给报表.我意识到这不是一个简单的问题所以我会尝试简化:

  1. 如何将现有的rdlc文件添加到ReportViewer(MVVM,WPF)?
  2. 我按下一个按钮 - >相关命令从我的observablecollection获取项目作为参数(我的数据网格中的一行) - >如何将此项目的数据部分传递给报告的未填充(或覆盖,如果填写)部分?

我希望我已经清楚了.谢谢你提前回答!

c# wpf reportviewer rdlc mvvm

9
推荐指数
1
解决办法
1万
查看次数

我们可以在VS 2017中使用VS 2015报表设计器吗?

Visual Studio 2017的最新报表查看器存在一些阻止我们使用它的错误.我们已降级为适用于Web窗体的Microsoft ReportViewer Runtime 2015(v 12.0.2402.15).但是,Visual Studio中的报表设计器以新的"2016"格式创建新报表,甚至编辑旧报表也会将它们升级为新格式.较旧的Report Viewer无法理解新格式和炸弹.

新的报表设计器是Visual Studio的扩展,"Visual Studio的Microsoft Rdlc报表设计器",版本14.2.我们还没有找到设计器的早期版本作为扩展.

我们已经尝试安装早期版本的SQL Set Data Tools,但报表设计器仍然是相同的.我们还没有找到早期报表设计器的单独下载.

有没有办法将旧的报表设计器添加到VS 2017?或者我们是否必须降级到VS 2015?

(此处类似的问题:在Visual Studio 2017中更改RDLC报告的RDL版本)

rdlc report-designer visual-studio-2017

9
推荐指数
1
解决办法
1414
查看次数

RDLC 和 Visual Studio 2022

我们开始使用 Visual Studio 2022,但几天后我们得到了这个可怕的消息:VS2022 不支持 RDLC 设计器。

有解决方法吗?当然我们可以继续并行使用VS2019,但是这太不舒服了。

rdlc visual-studio-2022

9
推荐指数
1
解决办法
2万
查看次数