The IDataParameter Interface


The IDataParameter Interface

Create, Retrieve, Update, and Delete (CRUD) commands are usually parameter driven. For example, retrieving data from a database often involves passing identity information to indicate which records in the particular data source need to be selected. The IDataParameter interface defines the methods that a .NET managed data provider must implement to pass parameters to its specific data source. The XmlFileParameter class implements the IDataParameter interface for the .NET managed data provider for XML files. The excerpt in Listing B.1 shows the code for this class that implements the IDataParameter interface for the .NET managed data provider for XML files.

Listing B.1. XmlFileParameter Class Implements IDataParameter

[C#] public class XmlFileParameter : IDataParameter {     DbType paramDbType = DbType.Object;     ParameterDirection parameterDirection = ParameterDirection.Input;     bool isNullable  = false;     string paramName;     string sourceColumn;     DataRowVersion dataRowVersion = DataRowVersion.Current;     object paramValue;     ...     public XmlFileParameter            (string parameterName, DbType dbType, string sourceColumn)     {          this.ParameterName = parameterName;          this.DbType = dbType;          this.SourceColumn = sourceColumn;     }     public String ParameterName     {          get { return paramName; }          set { paramName = value; }     }     public ParameterDirection Direction     {          get { return parameterDirection; }          set { parameterDirection = value; }     }     public Boolean IsNullable     {          get { return isNullable; }     }     public String SourceColumn     {          get { return sourceColumn; }          set { sourceColumn = value; }     }     public DataRowVersion SourceVersion     {          get { return dataRowVersion; }          set { dataRowVersion = value; }     }     public object Value     {          get          {               return this.paramValue;          }          set          {               this.paramValue    = value;               paramDbType = _inferType(value);          }     }     ... } [Visual Basic] Public Class XmlFileParameter : Implements IDataParameter     Private paramDbType As DbType = DbType.Object     Private parameterDirection As ParameterDirection = _         ParameterDirection.Input     Private _isNullable As Boolean = False     Private paramName As String     Private _sourceColumn As String     Private dataRowVersion As DataRowVersion = DataRowVersion.Current     Private paramValue As Object     ...     Public Sub New(ByVal _parameterName As String, _                    ByVal _value As Object, sourceColumn As String)          Me.ParameterName = _parameterName          Me.DbType = dbType          Me.SourceColumn = _sourceColumn     End Sub     Public Property ParameterName() As String _                    Implements IDataParameter.ParameterName          Get               Return paramName          End Get          Set               paramName = Value          End Set     End Property     Public Property Direction() As ParameterDirection _                    Implements IDataParameter.Direction          Get               Return parameterDirection          End Get          Set               parameterDirection = Value          End Set     End Property     Public ReadOnly Property IsNullable() As Boolean _                    Implements IDataParameter.IsNullable          Get               Return _isNullable          End Get     End Property     Public Property SourceColumn() As String _                    Implements IDataParameter.SourceColumn          Get               Return _sourceColumn          End Get          Set               _sourceColumn = Value          End Set     End Property     Public Property SourceVersion() As DataRowVersion _                    Implements IDataParameter.SourceVersion          Get               Return dataRowVersion          End Get          Set               dataRowVersion = Value          End Set     End Property     Public Property Value() As Object Implements IDataParameter.Value          Get               Return Me.paramValue          End Get          Set               Me.paramValue = Value               paramDbType = _inferType(Value)          End Set     End Property     ... End Class




Fenster Effective Use of Microsoft Enterprise Library(c) Building Blocks for Creating Enterprise Applications and Services 2006
Effective Use of Microsoft Enterprise Library: Building Blocks for Creating Enterprise Applications and Services
ISBN: 0321334213
EAN: 2147483647
Year: 2004
Pages: 103
Authors: Len Fenster

flylib.com © 2008-2017.
If you may any questions please contact us: flylib@qtcs.net