如何在C#中将SQL Server Compact Edition数据库连接到Crystal Report

我正在尝试将我的SQL Server Compact Edition数据库连接到Crystal Report.我一整天都在搜索,到目前为止我在其他网站上发现了许多与之相关的问题,但没有一个有可靠的答案.

我还在这个网站上找到了this question,它要求VB.Net解决方案.和this link这一切都在互联网上,并且有一种令人困惑的方式来用XML来做,我无法弄明白.

SQL Server和Access中的解决方案还有其他链接没有帮助.

> SQL Server solution
> Access Solution

我想知道是否有一种简单的方法将SQL Server CE数据库连接到Crystal Report实际上有效?

所以我找到了我的解决方案,感谢这个有用的CodeProject sample

我将展示一个更容易的样本,以便更容易弄清楚.

>创建一个Winform并向其添加一个按钮和一个CrystalReportViewer控件.
>使用add – >将DataSet(* .xsd文件)添加到项目中解决方案资源管理器中的新项之后,将DataTable添加到DataSet.

>将列添加到DataTable.最好将它们命名为与要在报告中显示的列相同的名称.列数取决于Crystal报表中应显示的列数.
>使用add – >将Crystal Report添加到项目中“新建项目”并使用“报表向导”,选择“项目”数据源的ADO.NET DataSet作为Crystal Report的数据源,并选择刚刚在DataSet中创建的数据表,作为Crystal Report的选定表.

>单击“完成”,您的列将自动添加到CrystalReport中.
>转到按钮单击事件并在其中写入这些代码.

private void btnGo_Click(object sender, EventArgs e)
{
    CrReport2 objRpt = new CrReport2();
    string query = "Select Name,Number from tblInfo";  //Your sql query
    SqlCeConnection conn =
        new SqlCeConnection(
           @"Data Source=|DataDirectory|\myDB.sdf;Persist Security Info=False"); //Your connection

    SqlCeDataAdapter adepter = new SqlCeDataAdapter(query, conn);
    DsReport Ds = new DsReport(); //DsReport is my dataset

    adepter.Fill(Ds, "customer"); //customer is my datatable in dataset

    objRpt.SetDataSource(Ds);
    crystalReportViewer1.ReportSource = objRpt;
}

>享受你的报告:)

https://stackoverflow.com/questions/25830404/how-to-connect-sql-server-compact-edition-database-to-crystal-report-in-c-sharp

本站文章除注明转载外,均为本站原创或编译
转载请明显位置注明出处:如何在C#中将SQL Server Compact Edition数据库连接到Crystal Report