ServiceStack.Data.IDbConnectionFactory

时间:2017-01-07 09:01:39

标签: c# .net servicestack ormlite-servicestack

我想使用servicestack.ormlite连接到数据库。但是即使在添加了Nuget的参考之后我也收到了这个错误。

我用这个命令安装

  

Install-Package ServiceStack.OrmLite.SqlServer

这是抛出的错误

  

' ServiceStack.Data.IDbConnectionFactory'不包含   ' Open'的定义没有扩展方法' Open'接受第一个   类型' ServiceStack.Data.IDbConnectionFactory'的参数可能   发现(你错过了使用指令或程序集   参考?)

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

}

2 个答案:

答案 0 :(得分:4)

IDbConnectionFactory.Open()扩展方法在OrmLiteConnectionFactoryExtensions中定义了ServiceStack.OrmLite命名空间下的using ServiceStack.OrmLite; ,因此您需要导入:

{{1}}

答案 1 :(得分:0)

你确定Extension方法Open不接受任何参数吗?

我在git上检查了OrmLiteConnectionFactory Extensions的源代码,并且没有名为Open for OrmLiteConnectionFactory的扩展方法,它不带参数。 扩展方法打开OrmLiteConnectionFactory需要一个字符串参数“nammedconnection”。

以下是源代码的git链接。 https://github.com/ServiceStack/ServiceStack.OrmLite/blob/master/src/ServiceStack.OrmLite/OrmLiteConnectionFactory.cs

因此,我确信使用正确的参数调用Open将解决您的问题。

谢谢和问候, Chetan Ranpariya