Balogun Tunde Ответов: 2

Создать класс/метод для подключения к базе данных


Привет,

У меня есть этот код строки подключения ниже;

string conn = ConfigurationManager.ConnectionStrings["DefaultConnection"].ConnectionString.ToString();
            SqlConnection cn;
            cn = new SqlConnection(conn);
            cn.Open();


Как я могу создать класс/метод, чтобы иметь возможность вызывать только строку или переменную всякий раз, когда мне нужны эти строки подключения на моей кодовой странице?

Надеюсь, мой вопрос ясен? Спасибо за помощь заранее.

Что я уже пробовал:

string conn = ConfigurationManager.ConnectionStrings["DefaultConnection"].ConnectionString.ToString();
            SqlConnection cn;
            cn = new SqlConnection(conn);
            cn.Open();

Richard MacCutchan

Что плохого в том, чтобы делать это таким (правильным) образом?

Maciej Los

Хорошая мысль!

Maciej Los

Почему?
Что вы подразумеваете под словами: "Мне нужны эти строки подключения на моей кодовой странице"? Не могли бы вы уточнить?

Balogun Tunde

Спасибо вам всем за ваш ответ, я действительно ценю это.
Код работает отлично, но я не хочу копировать и вставлять этот код каждый раз, когда хочу подключиться к базе данных. Я новичок в этом деле ASP.NET, я иду от PHP. В PHP вы просто размещаете этот код на отдельной странице и ссылаетесь на нее в любое время, когда вам нужно подключение к БД. Так что я тоже хочу этого добиться. ASP.NET.

Maciej Los

Вам не нужно копировать код, который отвечает за подключение. Взгляните на решение№2 от F-ES Sitecore. Я думаю, это то, чего ты хочешь.

PIEBALDconsult

Есть мириады способов. У меня их около дюжины, некоторые довольно сложные. Это зависит от того, какие функции вам требуются.

2 Ответов

Рейтинг:
1

OriginalGriff

Это, вероятно, излишне для того, что вы хотите сделать, но у него есть преимущества: Хранилище экземпляров - простой способ обмена конфигурационными данными между приложениями[^]


Balogun Tunde

Спасибо за ваш ответ, я действительно ценю это.
Код работает отлично, но я не хочу копировать и вставлять этот код каждый раз, когда хочу подключиться к базе данных. Я новичок в этом деле ASP.NET, я иду от PHP. В PHP вы просто размещаете этот код на отдельной странице и ссылаетесь на нее в любое время, когда вам нужно подключение к БД. Так что я тоже хочу этого добиться. ASP.NET.

Рейтинг:
0

F-ES Sitecore

public static class DatabaseManager
{
    public static SqlConnection GetConnection()
    {
        return GetConnection("DefaultConnection");
    }

    public static SqlConnection GetConnection(string name)
    {
        string conn = ConfigurationManager.ConnectionStrings[name].ConnectionString.ToString();
        SqlConnection cn;
        cn = new SqlConnection(conn);
        cn.Open(); // It's not a good idea to open early, you should open right before it is needed

        return cn;
    }
}


Использование;

SqlConnection con = DatabaseManager.GetConnection();


PIEBALDconsult

Я думаю, что он хотел указать имя соединения в качестве параметра.

F-ES Sitecore

Вы тоже можете это сделать, посмотрите внимательнее на код :)

SqlConnection con = DatabaseManager.Метод Getconnection("YourConnectionNameHere");

Maciej Los

5!