首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在crystal reports中设置相对路径

在crystal reports中设置相对路径
EN

Stack Overflow用户
提问于 2012-06-27 01:01:22
回答 2查看 5.9K关注 0票数 2

我已经编写了以下代码,

代码语言:javascript
复制
CrystalDecisions.CrystalReports.Engine.ReportDocument report = new CrystalDecisions.CrystalReports.Engine.ReportDocument();
report.Load(@"C:\Users\XXX\Desktop\Backup1\Project\ReportsFolder\ReportSalesInvoice.rpt");

Report对上面的代码工作得很好,但我想给出一个相对路径,这样我就可以在不更改路径的情况下将其安装在多台机器上。我还尝试了以下方法

代码语言:javascript
复制
string loc = AppDomain.CurrentDomain.BaseDirectory;
string loc2 = Application.StartupPath;
string loc3 = Application.UserAppDataPath;
string loc4 = Application.CommonAppDataPath;                

把它们当做

代码语言:javascript
复制
report.Load(loc2 + "\\ReportSalesInvoice.rpt");

但该文件不能是accessed.Please帮助。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2012-06-28 05:14:56

没有在windows应用程序中测试过,但这是我在MVC3中使用的。不过,我认为相对路径必须位于应用程序的根目录中

代码语言:javascript
复制
    using CrystalDecisions.CrystalReports.Engine;
    using CrystalDecisions.Shared;

    using (var report = new ReportClass { FileName = Server.MapPath("/AppName/Reports/MyReport.rpt") })
    {
        report.Load();
    ...
票数 3
EN

Stack Overflow用户

发布于 2016-02-14 10:51:57

代码语言:javascript
复制
private void Crystal_rpt()
{
  ReportDocument dir = new ReportDocument();
  dir = functions.Show_Crystal_rpt();
  dir.Load(Application.StartupPath + "\\rptObt_mark.rpt");
  crpMark_sheet.ReportSource = dir;
}
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/11212358

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档