Entity Framework CodeFirst For Oracle[转]
生活随笔
收集整理的這篇文章主要介紹了
Entity Framework CodeFirst For Oracle[转]
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
說明:1)簡單示例 ?2)非純粹的CodeFirst,更多的是DbFirst+CodeFirst方式相結合。3)只需用Oracle最新版的ODAC,不需要第三方驅動。4)相應的web.config配置。三步即可。
1. 聲明 model, 并手動創建表結構,字段建議大寫。
public class PageUser {public virtual string PId { get; set; }public virtual string UId { get; set; }}2. Model和表 Mapping
public class PageUserMapping : EntityTypeConfiguration<PageUser>{protected string DbSchema { get; set; }public PageUserMapping(): this(null){}public PageUserMapping(string dbSchema){this.DbSchema = dbSchema;Property(c => c.UId).HasColumnName("UID");Property(c => c.PId).HasColumnName("PID");//設置主鍵 HasKey(c => new { c.UId,c.PId });if (string.IsNullOrEmpty(DbSchema)){ToTable("PAGEUSERS"); //表名 }elseToTable("PAGEUSERS", DbSchema); //Oracle等需要指定Schema,即登陸oracle的用戶 }}3. 繼承 DbContext 的類中,重寫
public class MContext : DbContext{ protected override void OnModelCreating(DbModelBuilder modelBuilder){base.OnModelCreating(modelBuilder);modelBuilder.Conventions.Remove<ModelNamespaceConvention>();modelBuilder.Conventions.Remove<ModelContainerConvention>();//此處重要modelBuilder.Configurations.Add(new PageUserMapping("TEST"));}} }到目前為止此為幾個關鍵點,可以 using(var contxt=new MContext()) { ....} ?使用了。
另:Web開發,Web.config 配置,當然要引用?Oracle.DataAccess 了。
?
<system.data><DbProviderFactories><remove invariant ="Oracle.DataAccess.Client" /><add name="Oracle Data Provider for .NET"invariant="Oracle.DataAccess.Client"description="Oracle Data Provider for .NET"type="Oracle.DataAccess.Client.OracleClientFactory,Oracle.DataAccess,Version=4.112.3.0,Culture=neutral,PublicKeyToken=89b483f429c47342,processorArchitecture=x86" /></DbProviderFactories></system.data>?
?
?
轉載自:http://www.cnblogs.com/egood21/archive/2013/02/05/2893436.html
謝謝瀏覽!
轉載于:https://www.cnblogs.com/Music/archive/2013/02/06/entity-framework-codefirst-for-oracle.html
總結
以上是生活随笔為你收集整理的Entity Framework CodeFirst For Oracle[转]的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 模拟alert,confirm,prom
- 下一篇: android使用软引用构建缓存