Page tree

Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Description

Excerpt

Sets an ADO.NET IDataReader as a data source to bind to template data markers.

Signature
C#
C#

 public void BindData(System.Data.IDataReader source, System.String dataSourceName, DataBindingProperties property)
Signature
vb.net
vb.net

Public Sub BindData(ByVal source As System.Data.IDataReader, ByVal dataSourceName As String, ByVal [property] As DataBindingProperties)
Parameters
Param
source
source

This parameter must be an instance of

Msdn
System.Data.SqlClient.SqlDataReader
System.Data.SqlClient.SqlDataReader
1System.Data.SqlClient.SqlDataReader
,
Msdn
System.Data.OleDb.OleDbDataReader
System.Data.OleDb.OleDbDataReader
1System.Data.OleDb.OleDbDataReader
or
Msdn
Microsoft.AnalysisServices.AdomdClient.AdomdDataReader
Microsoft.AnalysisServices.AdomdClient.AdomdDataReader
1Microsoft.AnalysisServices.AdomdClient.AdomdDataReader
, otherwise BindData will throw an exception.

Param
dataSourceName
dataSourceName

The name of the set of data markers at which to insert the values imported from the data source. Note: dataSourceName does not include a data marker's column name, for example, the dataSourceName for %%=Products.ProductID is "Products."

Param
property
property

The DataBindingProperties object which contains information about how the data should be bound to the template.

Param
property
property

The DataBindingProperties object which contains information about how the data should be bound to the template. property Must be specified, but the DataBindingProperties need not be set beforehand. To bind data to a template with the default DataBindingProperties, pass in PowerPointTemplate.CreateDataBindingProperties() as the property value.

Exceptions
Exception
ArgumentNullException
ArgumentNullException

BindData will throw this exception if null (C#) or Nothing (VB.NET) is passed to the method.

Exception
Exception
ArgumentException
ArgumentException

Example
Csharp


          OleDbDataReader CategoryRdr = GetCategoryReader();
          try
          {
               PowerPointTemplate pptt = new PowerPointTemplate();
               pptt.BindData(CategoryRdr,
                    "Category",
                    PowerPointTemplate.CreateDataImportProperties());
          } catch(System.Exception ex) {
          } finally {
               //--- The OleDbDataReader must be open when it's passed
               //--- to PowerPointTemplate. Remember to close it after use.
               if(CategoryRdr!=null)
                    CategoryRdr.Close();
          }

          //--- Get an OleDbDataReader containing a list of product categories
          private OleDbDataReader GetCategoryReader()
          {
               OleDbConnection Conn = new OleDbConnection();
               Conn.ConnectionString = Application["connstring"].ToString();

               //--- SQL query for a list of categories
               string CategorySQL = "SELECT CategoryName FROM Categories";
               OleDbCommand Cmd = new OleDbCommand(CategorySQL, Conn);
               Conn.Open();
               return Cmd.ExecuteReader();
          }
        
Vbnet

Option Strict On
Option Explicit On

Dim CategoryRdr As OleDbDataReader = GetCategoryReader()
Try
Dim pptt As New PowerPointTemplate()
pptt.BindData(CategoryRdr, _
"Category", _
PowerPointTemplate.CreateDataBindingProperties())
Catch ex As System.Exception
Finally
'--- The OleDbDataReader must be open when it's passed
'--- to PowerPointTemplate. Remember to close it after use.
If Not CategoryRdr = Nothing
CategoryRdr.Close()
End If
End Try

'--- Get an OleDbDataReader containing a list of product categories
Private Function GetCategoryReader() As OleDbDataReader
Dim Conn As New OleDbConnection()
Conn.ConnectionString = Application("connstring").ToString()

'--- SQL query for a list of categories
Dim CategorySQL As String = "SELECT CategoryName FROM Categories"
Dim Cmd As New OleDbCommand(CategorySQL, Conn)
Conn.Open()
Return Cmd.ExecuteReader()
End Function