首页 > 试题广场 >

嵌入式水晶报表和非嵌入式水晶报表有什么相同点和不同点?在 W

[问答题]

嵌入式水晶报表和非嵌入式水晶报表有什么相同点和不同点?在 Windows 应用程序中,能否使用非嵌入式水晶报表?

相同点:都需要创建水晶报表文件.rpt。 不同点: 嵌入式报表具有与.rpt文件对应的同名包装类,直接通过代码与包装类进行交互,而不是与原始报表文件本身进行交互。非嵌入式报表则单独以.rpt文件形式存在报表,该报表不包含在项目内,也没有对应的报表包装类。 对于嵌入式报表,系统对项目进行编译时,与其他项目资源一样,报表和其包装类都会被自动嵌入到程序集中,用户看不到被包装后的.rpt文件。对于非嵌入式报表,如果是ASP.NET网站,要求该.rpt文件保存在网站根目录下,如果是Windows应用程序则要求分发后.rpt文件保存在和.exe文件相同的目录下。 对于嵌入式报表,如果修改了报表内容,必须重新编译整个项目。非嵌入式报表修改了报表内容,不须重新编译整个项目。 在Windows应用程序中,可以使用非嵌入式水晶报表。但要求分发后.rpt文件保存在和.exe文件相同的目录下(通过Application.StartPath访问该目录),在解决方案资源管理器中,水晶报表.rpt文件的【生成操作】属性改为“无”,该报表即成为非嵌入式报表,再将【复制到输出目录】属性改为“始终复制”,这样就可以在程序中访问到该文件。 相同点:都要创建水晶报表文件.rpt 不同点: 1.嵌入式水晶报表会生成与.rpt文件同名包装类,直接通过代码与包装类交互,而不是与.rpt文件本身。非嵌入式水晶报表没有同名包装类,不包含在项目内,直接以.rpt文件存在。 2.嵌入式水晶报表发生改变后,必须编译才会改变数据,而非嵌入式报表无需编译,直接改变。 3.对于ASP.NET文件,非嵌入式水晶报表必须处于网站根目录下;对于windows桌面程序,必须与.exe文件在同一目录内。 4.嵌入式水晶报表用户看不到被包装后的.rpt文件。
发表于 2019-03-28 16:16:04 回复(0)