Search Results for

    Show / Hide Table of Contents

    Базовый класс подключения

    Для создания собственного подключения используйте класс FastReport.Data.DataConnectionBase. Этот класс имеет следующий набор методов, которые нужно переопределить при создании собственного подключения:

    public abstract class DataConnectionBase : DataComponentBase
    {
      protected virtual string GetConnectionStringWithLoginInfo(string userName, string password)
      public abstract string QuoteIdentifier(string value, DbConnection connection);
      public virtual DbConnection GetConnection();
      public virtual DbDataAdapter GetAdapter(string selectCommand, DbConnection connection, 
        CommandParameterCollection parameters);
      public virtual ConnectionEditorBase GetEditor();
      public virtual Type GetParameterType();
      public virtual string GetConnectionId();
      public virtual string[] GetTableNames();
      public virtual void TestConnection();
      public virtual void FillTableSchema(DataTable table, string selectCommand, 
        CommandParameterCollection parameters);
      public virtual void FillTableData(DataTable table, string selectCommand, 
        CommandParameterCollection parameters);
    }
    

    Переопределять требуется не все методы - некоторые из них имеют реализацию по умолчанию, которой будет достаточно для большинства случаев. Так, если ваше подключение использует объекты типа DbConnection и DbDataAdapter (а это стандарт для подавляющего большинства подключений), то вам потребуется реализовать следующие методы:

      public abstract string QuoteIdentifier(string value, DbConnection connection);
      protected virtual string GetConnectionStringWithLoginInfo(string userName, string password)
      public virtual DbConnection GetConnection();
      public virtual DbDataAdapter GetAdapter(string selectCommand, DbConnection connection, 
        CommandParameterCollection parameters);
      public virtual ConnectionEditorBase GetEditor();
      public virtual Type GetParameterType();
      public virtual string GetConnectionId();
      public virtual string[] GetTableNames();
    

    Если ваше подключение не работает с такими объектами, а, например, представляет собой мост между сервером приложений и отчетом, вам потребуется реализовать следующие методы:

      public abstract string QuoteIdentifier(string value, DbConnection connection);
      public virtual ConnectionEditorBase GetEditor();
      public virtual Type GetParameterType();
      public virtual string GetConnectionId();
      public virtual string[] GetTableNames();
      public virtual void TestConnection();
      public virtual void FillTableSchema(DataTable table, string selectCommand, 
        CommandParameterCollection parameters);
      public virtual void FillTableData(DataTable table, string selectCommand, 
        CommandParameterCollection parameters);
    

    Ниже приведено описание каждого метода.

    Back to top © 1998-2025 Copyright ООО «Быстрые отчеты»