c #: как создать ODBC-соединение для всего решения? - PullRequest
0 голосов
/ 03 июля 2018

У меня есть рабочее соединение ODBC в одном из проектов, но я хочу СУХОЙ и иметь класс соединения, доступный для всего решения.

Итак, я удалил повторяющийся код из каждого проекта и создал следующий класс, на который я затем ссылался во всех проектах:

using System;
using System.Data.Odbc;

public class ConnectWithDb
{
    public OdbcConnection Connection;

    public OdbcConnection Connect()
    {
        try
        {
            string connectionString = "Driver={" + Constants.DriverODBC + "};Dbq=" + Constants.DbFileName + ";Uid=Admin;Pwd=;";
            OdbcConnection Connection = new OdbcConnection(connectionString);
            Connection.Open();

            return Connection;
        }
        catch (Exception ex)
        {
            throw new Exception(ex.Message);
        }
    }
}

Затем в каждом проекте и перед методом Main () я делаю:

private ConnectWithDb dbConnection = new ConnectWithDb();

Там нет ошибок. Проблема в том, что когда я пытаюсь создать команду внутри любого из методов, я получаю сообщение об ошибке, подобное этому:

OdbcCommand command = dbConnection.CreateCommand();

dbConnection подчеркнут и сообщает An object reference is required for the non-static field, method or property 'Program.dbConnection'

Я пытался установить некоторые методы и значения как статические, но это дает массу других ошибок.

Я думаю , что ConnectWithDb не возвращает фактическое соединение ... это правильно? Что я здесь не так делаю?

Спасибо!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...