ASP.Net内核下与C#的MS Access数据库连接

ASP.Net内核下与C#的MS Access数据库连接,asp.net,ms-access,asp.net-core,appsettings,Asp.net,Ms Access,Asp.net Core,Appsettings,我正在尝试将我的新项目(ASP.Net核心框架)与Access数据库连接起来 我需要输入什么:appsettings.json->“ConnectionString”? 我必须为它安装一些东西吗 这个框架是新的,不幸的是我在互联网上找不到什么 我需要准确连接“Access数据库” 我很乐意获得详细信息。请看这里: 具体而言,这里: 还有,试试这个 using System; using System.Windows.Forms; using System.Data.Odbc; namespa

我正在尝试将我的新项目(ASP.Net核心框架)与Access数据库连接起来

我需要输入什么:
appsettings.json->“ConnectionString”?

我必须为它安装一些东西吗

这个框架是新的,不幸的是我在互联网上找不到什么

我需要准确连接“Access数据库”

我很乐意获得详细信息。

请看这里:

具体而言,这里:

还有,试试这个

using System;
using System.Windows.Forms;
using System.Data.Odbc; 

namespace WindowsApplication1
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }

        private void button1_Click(object sender, EventArgs e)
        {
            string connetionString = null;
            OdbcConnection cnn ;
            connetionString = "Driver={Microsoft Access Driver (*.mdb)};DBQ=yourdatabasename.mdb;";
            cnn = new OdbcConnection(connetionString);
            try
            {
                cnn.Open();
                MessageBox.Show ("Connection Open ! ");
                cnn.Close();
            }
            catch (Exception ex)
            {
                MessageBox.Show("Can not open connection ! ");
            }
        }
    }
}
也试试这个

using System;
using System.Windows.Forms;
using System.Data.OleDb; 

namespace WindowsApplication1
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }

        private void button1_Click(object sender, EventArgs e)
        {
            string connetionString = null;
            OleDbConnection cnn ;
            connetionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=yourdatabasename.mdb;";
            cnn = new OleDbConnection(connetionString);
            try
            {
                cnn.Open();
                MessageBox.Show ("Connection Open ! ");
                cnn.Close();
            }
            catch (Exception ex)
            {
                MessageBox.Show("Can not open connection ! ");
            }
        }
    }
}
通过此链接:

OLEDB呢

OLEDB是一种很好的方式,可以在一个数据库中访问各种数据源 统一的方式,但它是基于COM,这是一个Windows的唯一 技术,因此不是最适合跨平台的 技术,如.NETCore。SQL Server中也不支持它 2014版及更高版本。由于这些原因,OLE DB将不受支持 由.NETCore编写


您可以使用
entityframeworkcore
,强烈建议将其用于
ASP.net Core
应用程序。还有很多关于使用它的教程

列出了EF Core的合适供应商:

->Microsoft Access文件

请首先从GitHub页面确认,并检查它是否仍然符合您的要求

就我个人而言,我还没有使用过它,但我很确定整个过程不会太复杂。

使用“”,它为您的应用程序提供了一个ODBC接口。请确保使用64位版本(因为dotnet core仅为64位)。请注意,它仅适用于单线程访问。安装时使用被动参数,因为不需要额外的检修组件


AccessDatabaseEngine\u X64.exe/passive

这是否有助于迁移到SQL Server不适用??问题是关于ASP.Net核心,而不是“标准的.Net应用程序”。Windows窗体和
System.Data.OleDb
/
System.Data.Odbc
名称空间不可用。删除旧数据库是错误的。请注意,连接字符串格式为@“Driver={MicrosoftAccess驱动程序(*.mdb,*.accdb)};DBQ=“;为什么只有单线程访问才安全?这不是对OleDB访问驱动程序的限制。从链接“Access Database Engine 2010不可再发行:……代码将在系统帐户下运行,或将同时处理多个用户身份,或高度可重入并期望无状态行为。”这应该是答案。唉,4.6.1依赖。这意味着这在asp.NETCore2.2Web应用程序中不起作用,对吗?