如何在web服务上在运行时设置刺激软件报表的连接字符串?
本文关键字:报表 软件 字符串 刺激 连接 设置 web 服务 运行时 | 更新日期: 2023-09-27 18:02:14
我用asp.net c#在刺激性软件中创建了一个报告。我创建了一个新连接,然后创建了一个新数据源,并向其添加了一个现有的存储过程。然后我将这个数据源的列和参数分配给我的报告。我的问题是:当我手动创建新的sqlconnection时,连接字符串是:
Data Source=my_pc-PC'my_servername;Integrated Security=True;Initial Catalog=my database_name
当我在我的电脑上运行我的网站,一切都很好,工作。但是当我在web服务上设置我的网站时,我做了什么来成功地显示我的报告吗?我的运行报告代码:
Stimulsoft.Report.Components.StiText t = new Stimulsoft.Report.Components.StiText();
t.Text = DateLabel.Text;
string str4 = Decrypt(Request.QueryString["select_rep_"]);
if (str4 == "1")
{
string str1 = Decrypt(Request.QueryString["fromdate_"]);
string str2 = Decrypt(Request.QueryString["todate_"]);
string ConnectionString = ConfigurationManager.ConnectionStrings["my_ejraConnectionString"].ConnectionString;
string serverlocation = HttpContext.Current.Server.MapPath(string.Empty);
StiReport myreport = new StiReport();
myreport.Dictionary.Databases.Add(new Stimulsoft.Report.Dictionary.StiSqlDatabase("Coneection", ConnectionString));
t.Text = DateLabel.Text;
myreport.Load(serverlocation + "''rep''myreport.mrt");
myreport.Dictionary.Variables["fromdate"].Value = str1;
myreport.Dictionary.Variables["todate"].Value = str2;
myreport.Dictionary.Variables["today"].Value = t.Text;
StiWebViewer1.Report = myreport;
}`enter code here`
这个代码工作没有任何变化的web服务器?
这样做,在使用之前清除数据库:
myreport.Dictionary.Databases.Clear();
myreport.Dictionary.Databases.Add(new StiSqlDatabase("ConnectionName", "ConnectionString"));
这是工作对我来说,在Asp.Net Core 2.0
遵循以下代码:
var myreport = new Stimulsoft.Report.StiReport();
_myreport.Load(@"C:'Users'Admin'Desktop'report.mrt"); // load report file
((StiSqlDatabase)myreport.Dictionary.Databases["Connection"]).ConnectionString = "new ConnectionString"; // set new connection string
myreport.Render();
需要安装NuGet Package Stimulsoft.Reports.Web.NetCore
version 2018.3.5
希望对大家有帮助。