1.先安裝NuGet
2.用NuGet安裝System.Data.SQLite,這樣是選擇x86和x64都有的版本
3.若要使用ASP.NET的membership provider和role provider功能,可安裝TechInfoSystems.Data.SQLite
web.config設定方式與DB檔可參考此篇:SQLite Membership, Role, and Profile Providers
4.連結資料庫,若懶得自己寫code,可安裝Enterprise Library Data Access Application Block
5.若要在Visual Studio裡面直接管理SQLite DB,或需要設計介面,可到SQLite網站上下載Precompiled Binaries for .NET
6.我的web.config設定,其中有一個DbProviderFactories是參考SQLite readme設定的,不然EntLib的DAAB不會動
<?xml version="1.0" encoding="utf-8"?>
<!--
如需如何設定 ASP.NET 應用程式的詳細資訊,請造訪
http://go.microsoft.com/fwlink/?LinkId=169433
-->
<configuration>
<configSections>
<!-- EnterpriseLibrary Configuration -->
<section name="dataConfiguration" type="Microsoft.Practices.EnterpriseLibrary.Data.Configuration.DatabaseSettings, Microsoft.Practices.EnterpriseLibrary.Data, Version=5.0.505.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" requirePermission="false" />
</configSections>
<!-- EnterpriseLibrary defaultDatabase -->
<dataConfiguration defaultDatabase="DefaultConnection">
<providerMappings>
<add databaseType="Microsoft.Practices.EnterpriseLibrary.Data.GenericDatabase, Microsoft.Practices.EnterpriseLibrary.Data, Version=5.0.505.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" name="System.Data.SQLite" />
</providerMappings>
</dataConfiguration>
<connectionStrings>
<add name="DefaultConnection" connectionString="Data Source=|DataDirectory|app_data.sqlite;Version=3;" providerName="System.Data.SQLite" />
</connectionStrings>
<system.data>
<!-- SQLite Data Provider -->
<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>
<system.web>
<compilation debug="true" targetFramework="4.0" />
<authentication mode="Forms" />
<!-- Membership provider -->
<membership defaultProvider="SQLiteMembershipProvider">
<providers>
<clear />
<add applicationName="SQLite ASP.NET Provider" passwordFormat="Clear" minRequiredNonalphanumericCharacters="0" minRequiredPasswordLength="2" maxInvalidPasswordAttempts="2" enablePasswordReset="true" enablePasswordRetrieval="true" passwordAttemptWindow="10" requiresQuestionAndAnswer="false" requiresUniqueEmail="false" connectionStringName="DefaultConnection" name="SQLiteMembershipProvider" type="TechInfoSystems.Data.SQLite.SQLiteMembershipProvider, SQLiteMembershipProvider" />
</providers>
</membership>
<!-- Role provider -->
<roleManager enabled="true" cacheRolesInCookie="true" cookieProtection="Validation" defaultProvider="SQLiteRoleProvider">
<providers>
<clear />
<add applicationName="SQLite ASP.NET Provider" connectionStringName="DefaultConnection" name="SQLiteRoleProvider" type="TechInfoSystems.Data.SQLite.SQLiteRoleProvider, SQLiteMembershipProvider" />
</providers>
</roleManager>
<!-- Profile provider -->
<profile defaultProvider="SQLiteProfileProvider">
<providers>
<clear />
<add applicationName="SQLite ASP.NET Provider" connectionStringName="DefaultConnection" name="SQLiteProfileProvider" type="TechInfoSystems.Data.SQLite.SQLiteProfileProvider, SQLiteMembershipProvider" />
</providers>
</profile>
</system.web>
<runtime>
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
<dependentAssembly>
<assemblyIdentity name="System.Data.SQLite" publicKeyToken="db937bc2d44ff139" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-1.0.82.0" newVersion="1.0.82.0" />
</dependentAssembly>
</assemblyBinding>
</runtime>
</configuration>
-----
Android SQLiteDatabase





沒有留言:
張貼留言