Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/334.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 如何使用ASP.NET 5运行Firebird嵌入式数据库?_C#_Fluent Nhibernate_Asp.net Core_Asp.net Core Mvc_Firebird Embedded - Fatal编程技术网

C# 如何使用ASP.NET 5运行Firebird嵌入式数据库?

C# 如何使用ASP.NET 5运行Firebird嵌入式数据库?,c#,fluent-nhibernate,asp.net-core,asp.net-core-mvc,firebird-embedded,C#,Fluent Nhibernate,Asp.net Core,Asp.net Core Mvc,Firebird Embedded,我正在尝试从我的MVC6应用程序运行firebird嵌入式数据库。我正在使用流利的Nhibernate。配置如下所示: var firebird = new FirebirdConfiguration(); var cs = @"User=SYSDBA;Password=masterkey;Database=SampleDatabase.fdb;DataSource=localhost; Port = 3050; Dialect = 3; Charset = NONE; Role =; Con

我正在尝试从我的MVC6应用程序运行firebird嵌入式数据库。我正在使用流利的Nhibernate。配置如下所示:

var firebird = new FirebirdConfiguration();

var cs = @"User=SYSDBA;Password=masterkey;Database=SampleDatabase.fdb;DataSource=localhost;
Port = 3050; Dialect = 3; Charset = NONE; Role =; Connection lifetime = 15; Pooling = true;
            MinPoolSize = 0; MaxPoolSize = 50; Packet Size = 8192; ServerType = 1; ";

SessionFactory = Fluently.Configure()
                .Mappings(m => m.FluentMappings.AddFromAssembly(Assembly.GetExecutingAssembly()))
                .Database(firebird.ConnectionString(cs)).BuildConfiguration()
                .BuildSessionFactory();
我还安装了nuget包
FirebirdSql.Data.FirebirdClient

但是,我得到了一个错误:

无法加载DLL“fbedded”:找不到指定的模块。

我试图在引用中包含此dll,但随后出现生成错误,表示无法还原此引用

我需要做什么才能让它运行


p.S:由于类似的情况/错误,我也未能使用SQLite。

您可能需要将fbembed.dll添加到asp.net应用程序的bin文件夹中,并将icu*文件(来自嵌入式Firebird ZIP包)添加到bin文件夹中

你把
fbedded.dll
和支持文件放在哪里了。请注意,将其作为引用并不真正起作用,Firebird embedded不包含在
FirebirdSql.Data.FirebirdClient
中。运行应用程序时,Firebird嵌入式文件需要位于路径上(或与应用程序位于同一文件夹中)。请注意,在我看来,将Firebird嵌入式与web应用程序一起使用是一个有点奇怪的选择:最好使用真正的Firebird服务器,这样您就不会遇到架构不匹配(32位与64位)问题取决于部署。@markrottveel谢谢,我会试试的。我正在尝试设置一个db用于测试目的。这就是我使用嵌入式版本的原因。我知道有人在ASP.net应用程序中使用Firebird embedded,所以这是可能的,但我认为您需要在部署中应用一些技巧才能使其正常工作。