2017-01-07 2 views
1

Я хотел использовать servicestack.ormlite для подключения к базе данных. Но я получаю эту ошибку даже после добавления refrence от Nuget.Не используется метод расширения, открытый в ServiceStack.Data.IDbConnectionFactory

Я использовал эту команду, чтобы установить

Install-Package ServiceStack.OrmLite.SqlServer

Это ошибка брошена

'ServiceStack.Data.IDbConnectionFactory' не содержат определение для 'Open' и метод расширения 'Open', принимающий первый аргумент типа 'ServiceStack.Data.IDbC onnectionFactory»может быть найдено (вы пропали без вести с помощью директивы или сборочный ссылку?)

var dbFactory = new OrmLiteConnectionFactory(connectionString, SqliteDialect.Provider); 
//I get error when I call open method 
using (IDbConnection db = dbFactory.Open()) 
{ 

} 
+0

Один сомнения, я в вашем коде установки пакет «ServiceStack.OrmLite.SqlServer», но попробуйте использовать SqlliteDialect.Provider. Перечень перечислений SqliteDialect недоступен в указанном вами пакете. Я попытался сделать это, и если неудачная компиляция с высказыванием «SqliteDialect» не может быть изменена как тип. Я попытался установить пакет «ServiceStack.OrmLite.Sqlite.Windows» и код работать нормально. –

ответ

4

Метод IDbConnectionFactory.Open() расширения определяются в OrmLiteConnectionFactoryExtensions, который определяется по ServiceStack.OrmLite имен, так что вам нужно импортировать:

using ServiceStack.OrmLite; 
0

Вы уверены, что расширение метода Open не принимает никаких аргументов?

Я проверил исходный код OrmLiteConnectionFactory Extensions на git и не существует метода расширения с именем Open для OrmLiteConnectionFactory, который не принимает аргументов. Метод расширения Open of OrmLiteConnectionFactory принимает один строковый аргумент «nammedconnection».

Ниже приведена ссылка git исходного кода. https://github.com/ServiceStack/ServiceStack.OrmLite/blob/master/src/ServiceStack.OrmLite/OrmLiteConnectionFactory.cs

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

Спасибо и уважение, Четан Ranpariya

+0

Проверьте эту ссылку: https: //servicestack.net/ormlite – Prabu

+0

В этом случае вы не можете использовать ту же версию ormlite, которая используется в примере вашей ссылки. –

+0

Вы получаете ошибку времени компиляции или ошибку времени выполнения? –