EF6+Sqlite注意事项

EF6+Sqlite注意事项,第1张

概述运行环境~VS2017+Win10 1.引用SQLite相关~ 2.添加引用后,Web.config文件已经变化,修改部分地方及连接字符串~ <provider invariantName="System.Data.SQLite" type="System.Data.SQLite.EF6.SQLiteProviderServices, System.Data.SQLite.EF6" /> <con

运行环境~VS2017+Win10

1.引用sqlite相关~

2.添加引用后,Web.config文件已经变化,修改部分地方及连接字符串~

<provIDer invariantname="System.Data.sqlite" type="System.Data.sqlite.EF6.sqliteProvIDerServices,System.Data.sqlite.EF6" />
<connectionStrings>
  <
add name="MusicStoreEntitIEs" connectionString="Data Source=|DataDirectory|MvcMusicStore.db" provIDername="System.Data.sqlite.EF6" />
</connectionStrings>

3.编写相关实体类和连接上下文类

//实体类例
//同时指定 table 特性,不指定只能使用
sqlquery 进行查询
[table("Artist")]
public
class Artist { public int ArtistID { get; set; } public string name { get; set; }}
//上下文类例using System.Data.Entity;using System.Data.Entity.Infrastructure;using System.Data.Entity.ModelConfiguration.Conventions;using System.linq;using System.Web;namespace MusicStore.Models {    public class MusicStoreEntitIEs:DbContext {        public MusicStoreEntitIEs()            : base("name=MusicStoreEntitIEs") {        }    //重写该方法用于指定单数形式的表名,不重写这里的话,在实体类上指定 table 特性        protected overrIDe voID OnModelCreating(DbModelBuilder modelBuilder) {            base.OnModelCreating(modelBuilder);            modelBuilder.Conventions.Remove<PluralizingtablenameConvention>();        }        public DbSet<Album> Albums { get; set; }        //public virtual DbSet<Genre> Genres { get; set; }        public DbSet<Genre> Genres { get; set; }    }}

对sqlite数据库的使用进行测试~

MusicStoreEntitIEs db = new MusicStoreEntitIEs();//var sql = "SELECT * FROM genre";//var genres = db.Database.sqlquery<Genre>(sql).ToList();var genres = db.Genres.ToList();return VIEw(genres);

两种查询方式均能正常返回数据。

总结

以上是内存溢出为你收集整理的EF6+Sqlite注意事项全部内容,希望文章能够帮你解决EF6+Sqlite注意事项所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/1158696.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-01
下一篇 2022-06-01

发表评论

登录后才能评论

评论列表(0条)

保存