In this blog we will discuss how to display records from a database using CrystalReportViewer.
Default.aspx code
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="Default.aspx.cs" Inherits="ReportViewer._Default" %>
<%@ Register assembly="CrystalDecisions.Web, Version=10.5.3700.0, Culture=neutral, PublicKeyToken=692fbea5521e1304" namespace="CrystalDecisions.Web" tagprefix="CR" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server"><title>Untitled Page</title>
/head>
<body><form id="form1" runat="server">
<div>
<CR:CrystalReportViewer ID="CrystalReportViewer1" runat="server"
AutoDataBind="true" />
</div>
</form>
</body>
</html>
Default.aspx.cs code
using System;
using System.Collections;using System.Configuration;
using System.Data;
using System.Linq;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.HtmlControls;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Xml.Linq;
using System.Data.SqlClient;
using CrystalDecisions.CrystalReports.Engine;
namespace ReportViewer
{
public partial class _Default : System.Web.UI.Page
{
string connStr =
ConfigurationManager.ConnectionStrings["ConnectionString"].ConnectionString;
SqlDataAdapter sqlda = new SqlDataAdapter();
SqlCommand com = new SqlCommand();
DataTable dt;
DataSet1 ds=new DataSet1();
ReportDocument rptDoc=new ReportDocument();
protected void Page_Load(object sender, EventArgs e)
{
bindReport();
}
private void bindReport()
{
SqlConnection conn = new SqlConnection(connStr);
dt = new DataTable();
dt.TableName = "Crystal Report Example";
com.Connection = conn;
com.CommandText = "SELECT * FROM product";
sqlda = new SqlDataAdapter(com);
sqlda.Fill(dt);
ds.Tables[0].Merge(dt);
rptDoc.Load(Server.MapPath("CrystalReport1.rpt"));
rptDoc.SetDataSource(ds);
CrystalReportViewer1.ReportSource = rptDoc;
}
}

Join the conversation! Your thoughts help the community grow.