在清单资源中找不到报告
本文关键字:找不到 报告 资源 单资源 | 更新日期: 2023-09-27 17:59:28
我将所有Crystal Reports保存在一个文件夹中:
VOUCHERS-->SALE-->BILLFORMATS
例如:第一个报告的位置是:
VOUCHERS-->SALE-->BILLFORMATS-->BillFormat1.rpt
Vegi_Manager是根命名空间。
当我构建项目并尝试在代码中使用报告时,它会抛出一个错误:
Unable to find the report in the manifest resources
.cs文件有问题吗?
代码:
//------------------------------------------------------------------------------
// <auto-generated>
// This code was generated by a tool.
// Runtime Version:4.0.30319.1
//
// Changes to this file may cause incorrect behavior and will be lost if
// the code is regenerated.
// </auto-generated>
//------------------------------------------------------------------------------
namespace Vegi_Manager.VOUCHERS.SALE.BILLFORMATS {
using System;
using System.ComponentModel;
using CrystalDecisions.Shared;
using CrystalDecisions.ReportSource;
using CrystalDecisions.CrystalReports.Engine;
public class BillFormat1 : ReportClass {
public BillFormat1() {
}
public override string ResourceName {
get {
return "BillFormat1.rpt";
}
set {
// Do nothing
}
}
public override bool NewGenerator {
get {
return true;
}
set {
// Do nothing
}
}
public override string FullResourceName {
get {
return "Vegi_Manager.VOUCHERS.SALE.BILLFORMATS.BillFormat1.rpt";
}
set {
// Do nothing
}
}
[Browsable(false)]
[DesignerSerializationVisibilityAttribute(System.ComponentModel.DesignerSerializationVisibility.Hidden)]
public CrystalDecisions.CrystalReports.Engine.Section Section1 {
get {
return this.ReportDefinition.Sections[0];
}
}
[Browsable(false)]
[DesignerSerializationVisibilityAttribute(System.ComponentModel.DesignerSerializationVisibility.Hidden)]
public CrystalDecisions.CrystalReports.Engine.Section Section2 {
get {
return this.ReportDefinition.Sections[1];
}
}
[Browsable(false)]
[DesignerSerializationVisibilityAttribute(System.ComponentModel.DesignerSerializationVisibility.Hidden)]
public CrystalDecisions.CrystalReports.Engine.Section Section3 {
get {
return this.ReportDefinition.Sections[2];
}
}
[Browsable(false)]
[DesignerSerializationVisibilityAttribute(System.ComponentModel.DesignerSerializationVisibility.Hidden)]
public CrystalDecisions.CrystalReports.Engine.Section Section4 {
get {
return this.ReportDefinition.Sections[3];
}
}
[Browsable(false)]
[DesignerSerializationVisibilityAttribute(System.ComponentModel.DesignerSerializationVisibility.Hidden)]
public CrystalDecisions.CrystalReports.Engine.Section Section5 {
get {
return this.ReportDefinition.Sections[4];
}
}
[Browsable(false)]
[DesignerSerializationVisibilityAttribute(System.ComponentModel.DesignerSerializationVisibility.Hidden)]
public CrystalDecisions.Shared.IParameterField Parameter_ParamFirmName {
get {
return this.DataDefinition.ParameterFields[0];
}
}
[Browsable(false)]
[DesignerSerializationVisibilityAttribute(System.ComponentModel.DesignerSerializationVisibility.Hidden)]
public CrystalDecisions.Shared.IParameterField Parameter_ParamFirmJurisdiction {
get {
return this.DataDefinition.ParameterFields[1];
}
}
[Browsable(false)]
[DesignerSerializationVisibilityAttribute(System.ComponentModel.DesignerSerializationVisibility.Hidden)]
public CrystalDecisions.Shared.IParameterField Parameter_ParamFirmPhoneNo {
get {
return this.DataDefinition.ParameterFields[2];
}
}
[Browsable(false)]
[DesignerSerializationVisibilityAttribute(System.ComponentModel.DesignerSerializationVisibility.Hidden)]
public CrystalDecisions.Shared.IParameterField Parameter_ParamFirmMobileNo {
get {
return this.DataDefinition.ParameterFields[3];
}
}
[Browsable(false)]
[DesignerSerializationVisibilityAttribute(System.ComponentModel.DesignerSerializationVisibility.Hidden)]
public CrystalDecisions.Shared.IParameterField Parameter_ParamFirmDetails {
get {
return this.DataDefinition.ParameterFields[4];
}
}
[Browsable(false)]
[DesignerSerializationVisibilityAttribute(System.ComponentModel.DesignerSerializationVisibility.Hidden)]
public CrystalDecisions.Shared.IParameterField Parameter_ParamFirmAddress {
get {
return this.DataDefinition.ParameterFields[5];
}
}
[Browsable(false)]
[DesignerSerializationVisibilityAttribute(System.ComponentModel.DesignerSerializationVisibility.Hidden)]
public CrystalDecisions.Shared.IParameterField Parameter_ParamFirmCity {
get {
return this.DataDefinition.ParameterFields[6];
}
}
[Browsable(false)]
[DesignerSerializationVisibilityAttribute(System.ComponentModel.DesignerSerializationVisibility.Hidden)]
public CrystalDecisions.Shared.IParameterField Parameter_ParamFirmState {
get {
return this.DataDefinition.ParameterFields[7];
}
}
[Browsable(false)]
[DesignerSerializationVisibilityAttribute(System.ComponentModel.DesignerSerializationVisibility.Hidden)]
public CrystalDecisions.Shared.IParameterField Parameter_ParamFirmBankDetails {
get {
return this.DataDefinition.ParameterFields[8];
}
}
[Browsable(false)]
[DesignerSerializationVisibilityAttribute(System.ComponentModel.DesignerSerializationVisibility.Hidden)]
public CrystalDecisions.Shared.IParameterField Parameter_ParamBillNo {
get {
return this.DataDefinition.ParameterFields[9];
}
}
}
[System.Drawing.ToolboxBitmapAttribute(typeof(CrystalDecisions.Shared.ExportOptions), "report.bmp")]
public class CachedBillFormat1 : Component, ICachedReport {
public CachedBillFormat1() {
}
[Browsable(false)]
[DesignerSerializationVisibilityAttribute(System.ComponentModel.DesignerSerializationVisibility.Hidden)]
public virtual bool IsCacheable {
get {
return true;
}
set {
//
}
}
[Browsable(false)]
[DesignerSerializationVisibilityAttribute(System.ComponentModel.DesignerSerializationVisibility.Hidden)]
public virtual bool ShareDBLogonInfo {
get {
return false;
}
set {
//
}
}
[Browsable(false)]
[DesignerSerializationVisibilityAttribute(System.ComponentModel.DesignerSerializationVisibility.Hidden)]
public virtual System.TimeSpan CacheTimeOut {
get {
return CachedReportConstants.DEFAULT_TIMEOUT;
}
set {
//
}
}
public virtual CrystalDecisions.CrystalReports.Engine.ReportDocument CreateReport() {
BillFormat1 rpt = new BillFormat1();
rpt.Site = this.Site;
return rpt;
}
public virtual string GetCustomizedCacheKey(RequestContext request) {
String key = null;
// // The following is the code used to generate the default
// // cache key for caching report jobs in the ASP.NET Cache.
// // Feel free to modify this code to suit your needs.
// // Returning key == null causes the default cache key to
// // be generated.
//
// key = RequestContext.BuildCompleteCacheKey(
// request,
// null, // sReportFilename
// this.GetType(),
// this.ShareDBLogonInfo );
return key;
}
}
}
有时,我会将.cs
文件中的命名空间更改为Vegi_Manager
,而不是Vegi_Manager.OUCHERS.SALE.BILLFORMAS,它可以工作,但当项目再次编译时,它会恢复为Vegi_Mnager.OUCHErs.SALE.BILLFORMATS,并再次显示相同的错误。
是什么原因导致了上述错误?
我收到了同样的错误,因为我将报表的构建操作从Embedded resource更改为resource。如果将生成操作更改为Embedded resource,则应该可以解决问题。要更改它,请单击.rpt文件,然后转到其高级属性,然后单击"构建操作"下拉列表。
如果出现此错误:
Unable to find the report in the manifest resources.
通过以下步骤解决了问题:
- 右键单击您的解决方案或水晶报表文件夹。转到文件资源管理器中的打开文件夹
- 选择您的报告。您必须只选择报告的rpt文件,而不是cs文件
- 复制报告&保存到桌面或其他位置
- 现在删除水晶报告,如果你正在使用源控制器也从中删除
现在将报告添加为保存rpt文件的现有文件,它将自动生成它的cs文件。
构建&运行您的解决方案。
来源:http://atikpassion.blogspot.in/2014/08/unable-to-find-report-in-manifest.html
在我的情况下,这是因为我在父文件夹和报表的名称中有空格。如果您将它们命名为Foo Bar
,只需将其重命名为FooBar
就可以了。
您需要在构造函数中修改文件的路径
Public Overrides Property FullResourceName() As String
Get
Return "**[path]**.BillFormat1.rpt"
End Get
Set
'Do nothing
End Set
End Property
在我的例子中,报告的.cs文件在FullResourceName属性下有一个错误的命名空间字符串值。当我从另一个项目复制这个文件时,我手动操作了它,但错过了这个名称空间值。
在我的案例中,这对我很有效:1.在Visual Studio中单击您的rpt文件2.在"属性"窗口中,选中"生成操作"3.将值更改为"嵌入式资源"
右键单击rpt文件。选择属性并转到"生成操作"下拉列表,然后选择嵌入式资源。这对我来说很管用。祝大家好运。
- 选择.rpt文件,然后右键单击文件
- 选择##属性
- 设置Biuld操作##嵌入资源
- 将复制设置为输出目录##不复制
终于可以解决问题了
只需转到参考文献并选择所有以crystalldesicion
开头的dll
。
选择完所有属性后,在属性表中找到Copy Local
属性,现在将其值更改为true
。
构建项目并将其全部保存。
现在它已经准备好行动了。