MS Access Database Connection with C# under ASP.Net Core

前端 未结 4 678
猫巷女王i
猫巷女王i 2021-01-20 02:51

I am trying to connect my new Project (ASP.Net Core Framework) with Access Database.

What do I need to enter into: appsettings.json -> \"Conne

相关标签:
4条回答
  • 2021-01-20 03:21

    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.

    0 讨论(0)
  • 2021-01-20 03:23

    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 ! ");
                }
            }
        }
    }
    
    0 讨论(0)
  • 2021-01-20 03:41

    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

    0 讨论(0)
  • 2021-01-20 03:47

    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.

    0 讨论(0)
提交回复
热议问题