Строка динамического соединения для строго типизированного набора данных - PullRequest
6 голосов
/ 20 января 2010

У меня есть приложение asp.net nTier. Уровень доступа к данным - это строго типизированный DataSet, состоящий из нескольких DataTables с DataAdapters. Когда пользователь входит в систему, он выбирает базу данных для подключения (из таблицы в базе данных участников). Мне нужно передать выбранную строку подключения в объект DataSet, который останется тем же для этих пользователей, пока они не войдут снова.

Я думаю, что ответом может быть создание частичного класса объекта DataSet, в котором я могу передать строку подключения в конструктор. Хотя я не уверен, как это сделать.

Приветствия

Ответы [ 2 ]

3 голосов
/ 25 января 2010

Наконец-то дошло до сути. В новом модуле я создал частичный класс для адаптера таблицы, в котором мне нужно было изменить строку подключения, одна ошибка, которую я делал изначально, не указала правильное пространство имен.

Ниже приведен частичный класс, который я создал, что позволило мне динамически изменять строку подключения одного из моих адаптеров таблиц для таблицы с именем tblOptions:

Namespace ds1TableAdapters
    Partial Public Class tblOptionsTableAdapter
        Sub ChangeConnString(ByVal newConn As String)
            Me._connection.ConnectionString = newConn
        End Sub
    End Class
End Namespace

Спасибо за помощь, Уилл, это заставило меня двигаться в правильном направлении.

3 голосов
/ 21 января 2010

Вы можете сделать это с частичным классом.

Предполагая, что ваш типизированный набор данных называется HurrDurr:

public partial class HurrDurr
{
  public HurrDurr(string connex)
  {    
    this._connection = new global::System.Data.SqlClient.SqlConnection();
    this._connection.ConnectionString = connex;
  }
}

_connection инициализируется только в том случае, если оно является нулевым при первом внутреннем свойстве Connectionосуществляется доступ.

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