火鸟.NET提供程序和ASP.NET
问题描述:
我没有问题建立在C#中的常规(Windows窗体或控制台)项目中使用Firebird的.NET数据提供程序。火鸟.NET提供程序和ASP.NET
但是,每当我尝试使用ASP.NET同一供应商我做到以下几点:
- 复制DLL到项目,以保持它的版本控制
- 下的参考添加到项目
- 在我的连接中创建
<connectionStrings/>
标记的条目。 - 尝试使用入门连接到火鸟
这里是入门例子:
<connectionStrings>
<add
name="cstringdbname"
connectionString="User=SYSDBA;Password=MY_PASS;Database=/opt/interbase/data/mydbname;Server=MyHostName; Connection lifetime=15;Pooling=true"
providerName="Firebird"/>
</connectionStrings>
我用不同的东西在providerName
属性尝试。似乎没有任何工作。
我的问题是在第4步。每当我尝试使用SqlDataSource组件连接到数据库时,连接尝试使用SQLServer数据提供程序而不是Firebird,并且出现错误。
我的问题:还有什么需要,以使ASP.NET加载,使用做,acknwoledges我火鸟提供商是否存在等?
答
这是我做过什么来得到它的工作:
- 改变web配置添加这些条目:
首先,在configuration
标签新DBProviderFactory:
<system.data>
<DbProviderFactories>
<remove invariant="FirebirdSql.Data.FirebirdClient"/>
<add
name="Firebird Data Provider"
invariant="FirebirdSql.Data.FirebirdClient" description="Firebird"
type="FirebirdSql.Data.FirebirdClient.FirebirdClientFactory, FirebirdSql.Data.FirebirdClient"
/>
</DbProviderFactories>
</system.data>
其次,我的连接字符串项看起来是这样的:
<connectionStrings>
<add
name="rshkdb"
connectionString="User=u;Password=p;Database=/mydb;Server=X.X.X.X; Connection lifetime=15;Pooling=true"
/>
</connectionStrings>
- 添加了Firebird的客户端DLL使用项目的引用当地选项复制到真正。这非常重要,否则,ASP.NET在运行时不会找到该库(仅在编译时)。
答
我太在过去的项目尝试这样做,并没有得到它的工作。但是,我只找到连接字符串,所以我将设置移到了appSettings部分。一旦你这样做了,你可以使用你用于WinApp项目的相同连接设置。
显示为和读取连接字符串一些示例代码/创建在应用中的连接。 – RichardOD 2009-12-23 11:30:46