2017-10-28 234 views
0

我是ASP.Net的新手,在項目上工作需要與數據庫進行小型交互。因此,我想在我的ASP.NET MVC 5項目中使用SQLite。使用SQLite與ASP.Net的連接字符串MVC5

我發現一些博客和網站演示了從ASP.NET MVC附加SQLite所需的一些連接字符串,但這些都是非常老式的(大約6歲)。

所以,我的問題是:web.config需要什麼連接字符串將SQLite數據庫文件附加到我的ASP.NET MVC 5應用程序?

此外,將SQLite附加到ASP.NET MVC 5應用程序的先決條件是什麼?

在此先感謝

+0

基本上C#不支持sqlite的本身,所以我們需要一個第三方的DLL連接到(SQLite數據庫)http://www.c-sharpcorner.com/UploadFile/ 5d065a /如何使用的和 - 連接 - 源碼功能於一個窗口的應用程序/]。 –

+0

爲什麼只是sql lite ..爲什麼不是inuilt sql express –

+0

我不想附加SQL Server,Express或LocalDB。因爲我的客戶可能想在本地服務器上部署此應用程序。對於他來說,控制和配置Express或其他任何其他人將會是一個有問題的情況。 SQLite不需要任何安裝,配置和其他任何東西。 –

回答

1

對於asp.net core 2.0。對todo web-api示例的修改https://docs.microsoft.com/aspnet/core/tutorials/first-web-api#create-the-project。一個完整的描述,將會很大,但應包含要完成的主要項目。

*。在文件appsettings.json添加條目與

"ConnectionStrings": { 
      "DefaultConnection": "Data Source=mydb.sqlite" 
      } 

*。在Startup.cs修改方法ConfigureServices(IServiceCollection services)有:

public void ConfigureServices(IServiceCollection services) 
{ 
    ConfigurationBuilder builder = new ConfigurationBuilder(); 
    builder.SetBasePath(Directory.GetCurrentDirectory()) 
      .AddJsonFile("appsettings.json"); 

    Configuration = builder.Build(); 
    string ConnectionStr = Configuration.GetConnectionString("DefaultConnection"); 
    services.AddDbContext<TodoContext>(options => options.UseSqlite(ConnectionStr)); 
    SQLitePCL.Batteries.Init(); 

    services.AddMvc(); 
} 

*。在Startup.cs部分using添加

using Microsoft.Data.Sqlite; 
using SQLitePCL; 
+0

好吧,這可能是爲核心應用程序添加SQLite的正確方式,我也在一些網站上找到了關於Core 1和Core 2的一些例子。但是我現在不使用Core。我的問題是連接SQLite與MVC 5.不連接它與核心。 –

+0

太好了。我不知道與MVC 5相比有什麼不同,但是使用了net core 2.0作爲最新版本。一些人認爲這個解決方案可能是,Sqlite是集成的並且可以與asp.net框架一起工作。所以也許有些類型的向後遷移的起點。 –

+0

是的,這個解決方案應該這樣做... –