Message-ID: <1775972264.8083.1711631565311.JavaMail.web05$@web05> Subject: Exported From Confluence MIME-Version: 1.0 Content-Type: multipart/related; boundary="----=_Part_8082_517587002.1711631565295" ------=_Part_8082_517587002.1711631565295 Content-Type: text/html; charset=UTF-8 Content-Transfer-Encoding: quoted-printable Content-Location: file:///C:/exported.html ExcelTemplate.BindData(System.Data.DataTable, String, DataBindin= gProperties)

ExcelTemplate.BindData(System.Data.DataTable, String, DataBindingPr= operties)

Description

Sets an ADO.NET DataTable as a data source to bind to template data = markers.=20
C#
=20
 public virtual void BindData(System.Data.DataT=
able source, System.String dataSourceName, DataBindingProperties property)
=20
=20
vb.net
=20
Public Overridable Sub BindData(ByVal source As =
System.Data.DataTable, ByVal dataSourceName As String, ByVal [property] As =
DataBindingProperties)
=20

Parameters

=20
source
The DataTable to use as the data source.=20
dataSourceName
The name of the set of data m= arkers at which to insert the values imported from the data source.=20 dataSourceName must be specified, but can be left as null or a= n empty string if this is the first data source bound AND the data markers = in the template use the=20 short da= ta marker syntax or refer to the datasource by number rather than name.= Note:=20 dataSourceName does not include a data marker's column name, f= or example, the=20 dataSourceName for=20 %%=3DProducts.ProductID is "Products."=20
property
The=20 DataBindin= gProperties object which contains information about how the data should= be bound to the template.=20 property Must be specified, but the=20 DataBindingProperties need not be set beforehand. To bind data= to a template with the default=20 DataBindingProperties, pass in=20 ExcelTemplate.CreateDataBindingProperties() as the=20 property value. Otherwise, use the=20 ExcelTemplate.CreateDataBindingProperties() method to generate= a new=20 DataBindingProperties object and set the=20 Da= taBindingProperties.MaxRows,=20 = DataBindingProperties.Transpose, and/or=20 DataBindingProperties.WorksheetName properties for the workbook.

Exceptions

=20
ArgumentNullException
=20 BindData will throw this exception if the params source or pro= perty are=20 null (C#) or=20 Nothing (VB.NET).=20
SARuntimeException
=20 BindData will throw this exception if the data source contains= more rows than the worksheet can hold.
If there is more than one data marker referring to a data source and= the data source is forward only, the exception will be thrown only if the = source is larger than all bindings can hold.=20

Remarks

You can set several data sources for a sing= le template. Use the following methods to set template data sources:=20 BindCe= llData,=20 Bin= dColumnData, BindRo= wData, and=20 BindData<= /a>.=20

Examples

=20
C#
=20
          ExcelTemplate xlt =3D new ExcelTemplate();
          OleDbConnection Conn =3D new OleDbConnection();
          DataTable EmployeeDt =3D null;
          try
          {
               Conn.ConnectionString =3D Application["connstring"=
].ToString();

               //--- SQL Query for employee information
               string EmployeeSQL =3D "SELECT FirstName + ' ' +
                    LastName As Name, Title " +
                    "FROM Employees WHERE EmployeeID=3D?";
               OleDbCommand CmdEmployee =3D new OleDbCommand(EmployeeSQL, C=
onn);
               CmdEmployee.Parameters.Add("@EmployeeID", Employee=
Id);
               OleDbDataAdapter AdptEmployee =3D new OleDbDataAdapter(CmdEm=
ployee);
               EmployeeDt =3D new DataTable();
               AdptEmployee.Fill(EmployeeDt);
          }
          xlt.BindData(EmployeeDt,
               "Employee",
               xlt.CreateDataBindingProperties());
        
=20
vb.net
=20
          Dim xlt As New ExcelTemplate()
          Dim Conn As New OleDbConnection()
          Dim EmployeeDt As DataTable =3D Nothing
          Try
               Conn.ConnectionString =3D Application("connstring"=
).ToString()

               '--- SQL Query for employee information
               Dim EmployeeSQL As String =3D "SELECT FirstName & '=
 ' & _
                    LastName As Name, Title " & _
                    "FROM Employees WHERE EmployeeID=3D?"
               Dim CmdEmployee As New OleDbCommand(EmployeeSQL, Conn)
               CmdEmployee.Parameters.Add("@EmployeeID", Employee=
Id)
               Dim AdptEmployee As New OleDbDataAdapter(CmdEmployee)
               EmployeeDt =3D New DataTable()
               AdptEmployee.Fill(EmployeeDt)
          End Try
          xlt.BindData(EmployeeDt, _
               "Employee", _
               xlt.CreateDataBindingProperties())
        
=20
------=_Part_8082_517587002.1711631565295--