Как подключиться к базе данных через Massive?
В Massive есть метод для открытия соединения, но он принимает имя строки соединения. Я хочу дать ему строку подключения. Как я могу это сделать?
Как подключиться к базе данных через Massive?
В Massive есть метод для открытия соединения, но он принимает имя строки соединения. Я хочу дать ему строку подключения. Как я могу это сделать?
В коде Massive в методе Open() создается DynamicModel, а в конструкторе DynamicModel я нашел эту строку (Massive.cs 127 строка):
ConnectionString = ConfigurationManager.ConnectionStrings[connectionStringName].ConnectionString;
Это означает, что вам нужно сохранить строку подключения в файле конфигурации и передать методу Open соответствующее имя строки подключения.
Что вам нужно, так это создать методы перегрузки для принятия строки подключения. Вот пример:
public static DynamicModel Open(string connectionString, string providerName="System.Data.SqlClient")
{
dynamic dm = new DynamicModel(connectionString, providerName);
return dm;
}
public DynamicModel(string connectionString, string providerName ="System.Data.SqlClient", string tableName = "",
string primaryKeyField = "", string descriptorField = "")
{
TableName = tableName == "" ? this.GetType().Name : tableName;
PrimaryKeyField = string.IsNullOrEmpty(primaryKeyField) ? "ID" : primaryKeyField;
DescriptorField = descriptorField;
_factory = DbProviderFactories.GetFactory(providerName);
ConnectionString = connectionString;
}