我想在ASP.NET Core項目中使用SQlLite數據庫,但不使用實體框架。使用沒有實體的SQLLite數據庫ASP.NET Core項目中的框架
我想我應該用從DbProviderFactory
&這迎合了SQLLite數據庫(像System.Data.SqlClient.SqlClientFactory.Instance它用於SQLSERVER),但我無法找到它派生的類。
我遇到的所有例子都建議我使用實體框架,但我不想使用它。
我想在ASP.NET Core項目中使用SQlLite數據庫,但不使用實體框架。使用沒有實體的SQLLite數據庫ASP.NET Core項目中的框架
我想我應該用從DbProviderFactory
&這迎合了SQLLite數據庫(像System.Data.SqlClient.SqlClientFactory.Instance它用於SQLSERVER),但我無法找到它派生的類。
我遇到的所有例子都建議我使用實體框架,但我不想使用它。
你擁有了它的官方回購: https://github.com/aspnet/Microsoft.Data.Sqlite
而且這裏有一個例子: http://www.bricelam.net/2015/04/29/sqlite-on-corefx.html
編輯:如果添加鏈接內容消失的未來。
該提供程序建立在System.Data.Common合同之上。該合同是ADO.NET提供商模型的一個非常小的子集。任何熟悉ADO.NET的用戶都應該感到自然。
using (var connection = new SqliteConnection("" +
new SqliteConnectionStringBuilder
{
DataSource = "hello.db"
}))
{
connection.Open();
using (var transaction = connection.BeginTransaction())
{
var insertCommand = connection.CreateCommand();
insertCommand.Transaction = transaction;
insertCommand.CommandText = "INSERT INTO message (text) VALUES ($text)";
insertCommand.Parameters.AddWithValue("$text", "Hello, World!");
insertCommand.ExecuteNonQuery();
var selectCommand = connection.CreateCommand();
selectCommand.Transaction = transaction;
selectCommand.CommandText = "SELECT text FROM message";
using (var reader = selectCommand.ExecuteReader())
{
while (reader.Read())
{
var message = reader.GetString(0);
Console.WriteLine(message);
}
}
transaction.Commit();
}
}
配料
唯一真正的功能,該庫添加到本地SQLite的接口是配料。本地接口一次只支持編譯和執行一條語句。這個庫以一種應該感覺完全透明的方式實現批處理。以下是使用批處理的示例。
using (var connection = new SqliteConnection("Data Source=hello.db"))
{
var command = connection.CreateCommand();
command.CommandText =
"UPDATE message SET text = $text1 WHERE id = 1;" +
"UPDATE message SET text = $text2 WHERE id = 2";
command.Parameters.AddWithValue("$text1", "Hello");
command.Parameters.AddWithValue("$text2", "World");
connection.Open();
command.ExecuteNonQuery();
}
平臺:
目前,Microsoft.Data.Sqlite適用於以下平臺。
感謝。任何關於mysql類的信息? –
@AbdulRehmanSayed你正在尋找的包是「MySql.Data.Core」 – mattinsalto
@AbdulRehmanSayed,http://insidemysql.com/mysql-connector-net-for-net-core-1-0/ – mattinsalto