你的连接串是否正确?
string conn = "server=localhost;uid=filedb;pwd=admin;database=fire";

解决方案 »

  1.   

    还有一个方法:
    假设生成的水晶报表名为:CrystalReport1.rpt,数据集名为:DataSet1.xsd,则在相同目录下可以看到:CrystalReport1.cs,DataSet1.cs两个文件:
    你这样试试:
    private void Page_Load(object sender, System.EventArgs e)
    {
    this.CrystalReportViewer1.DisplayGroupTree = false;
    this.OpenConn = new SqlConnection(System.Configuration.ConfigurationSettings.AppSettings["ConnectionString"]);
    this.OpenConn.Open();
    DataSet1 ds = new DataSet1();
    CrystalReport1 orc = new CrystalReport1();
    this.OpenAdapter = new SqlDataAdapter("select * from salecontractdetails",this.OpenConn);
    this.OpenAdapter.Fill(ds,"SaleContractDetails");
    orc.SetDataSource(ds);
    this.CrystalReportViewer1.ReportSource = orc;
    this.CrystalReportViewer1.DataBind();
    }