整理兩個PetaPoco串連SQLite資料庫的方法

來源:互聯網
上載者:User

標籤:配置   檔案   nta   frame   add   com   dict   else   .config   

  1. 從https://github.com/qingask/PetaPoco.NetCore下載源檔案壓縮包
  2. 解壓出檔案PetaPoco.Multiple.cs、PetaPoco.NetCore.cs
  3. 放置System.Data.SQLite.dll檔案到bin檔案,這個需要從SQLite官方擷取對應框架組級對應位檔案,應該可以直接通過NuGet擷取。
  4. 方法1:
    1. 增加DbProviderFactories類,向PetaPoco注入SQLite執行個體
      public static class DbProviderFactories{    internal static readonly Dictionary<string, DbProviderFactory> Configs = new Dictionary<string, DbProviderFactory>();    static DbProviderFactories()    {        RegisterFactory("Microsoft.Data.Sqlite", SQLiteFactory.Instance);    }    public static DbProviderFactory GetFactory(string providerInvariantName)    {        if (Configs.ContainsKey(providerInvariantName))        {            return Configs[providerInvariantName];        }        return null;    }    public static void RegisterFactory(string providerInvariantName, DbProviderFactory factory)    {        if (Configs.ContainsKey(providerInvariantName))        {            Configs[providerInvariantName] = factory;        }        else        {            Configs.Add(providerInvariantName, factory);        }    }    public static IEnumerable<string> GetFactoryProviderNames()    {        return Configs.Keys.ToArray();    }}

       

    2. 配置web.config
      <add name="PetaPocoConn" connectionString="Data Source=|DataDirectory|Demo.db"/>

       

    3. 連結文法 
      var db=new Database(new SQLiteConnection(ConfigurationManager.ConnectionStrings["PetaPocoConn"].ConnectionString));

       

  5.   方法2:
    1.   配置web.config 
       <system.data>    <DbProviderFactories>      <remove invariant="System.Data.SQLite"/>               <add name="SQLite Data Provider" invariant="System.Data.SQLite" description=".Net Framework Data Provider for SQLite" type="System.Data.SQLite.SQLiteFactory, System.Data.SQLite" />     </DbProviderFactories>  </system.data>

       

    2. 連結字串:
      <connectionStrings>    <add name="PetaPocoConn" connectionString="Data Source=|DataDirectory|Demo.db" providerName="System.Data.SQLite" />  </connectionStrings>

       

    3. 輔助類:
          public static class DbScoure    {        public static Database SqliteDataBase()        {            var conn = ConfigurationManager.ConnectionStrings["PetaPocoConn"];            return new Database(conn.ConnectionString, conn.ProviderName);        }    }調用方式:var db=DbScoure.SqliteDataBase();

       

整理兩個PetaPoco串連SQLite資料庫的方法

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.