问题
I am trying to connect my new Project (ASP.Net Core Framework) with Access Database.
What do I need to enter into: appsettings.json ->  "ConnectionStrings"?
And do I have to install something for it?
This framework is new and unfortunately I found no much on the Internet.
I need to connect exactly "Access database".
I would be very happy for detailed information.
回答1:
From this link : https://blogs.msdn.microsoft.com/dotnet/2016/11/09/net-core-data-access/
What about OLE DB?
OLE DB has been a great way to access various data sources in a uniform manner, but it was based on COM, which is a Windows-only technology, and as such was not the best fit for a cross-platform technology such as .NET Core. It is also unsupported in SQL Server versions 2014 and later. For those reasons, OLE DB won’t be supported by .NET Core.
回答2:
Use the "Access Database Engine", which provides an ODBC interface to your application. Be sure to use the 64-bit version (since dotnet core is 64 bit only). Note that it is safe for single-threaded access only. Use the passive parameter at install since the additional Access components are not needed.
AccessDatabaseEngine_X64.exe /passive
回答3:
You can use the Entity Framework Core which is highly recommended for ASP.net Core applications. Also there are a lot of tutorials out there for using it.
The official documentation lists a suitable Provider for EF Core:
EntityFrameworkCore.Jet -> Microsoft Access files
Please make sure reading the limitations first from the GitHub Page and check if it's still passes your requirements.
Personally i haven't used it yet, but i'm pretty sure that the whole thing can't be too complicated.
回答4:
Looks here: https://www.connectionstrings.com/
Specifically, here: https://www.connectionstrings.com/access/
Also, try this.
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 ! ");
            }
        }
    }
}
Try this as well...
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 ! ");
            }
        }
    }
}
来源:https://stackoverflow.com/questions/43320008/ms-access-database-connection-with-c-sharp-under-asp-net-core