b>j)΄!Pԫ&;"kB޶}pSVT(wę!j x;-m@JnQ+պכ7MajfJͱ4jѲ撆RxZMz7vIW/dٞТזcZM~ji ߒsQzԠDW3Den"M+/B:-uIJ7j委9p='mANޭ=/B:-n&nUfqxZM~c Ϲ+,&ᾺܢF[(1*" ϒ"Jԧ<;b" "jܢF[x ,!q қ*]/؝27SMcs"ޭDQ/应ܢF_! :s" 7`F+SVTn"IJnQ/应B 4 wD"IJ׭-`S9DrjiEJ߅gJ应矁[xZM~n"IB؃!'Тѕ+(mIKʭ/|ϐܢF[xZMzG %嬩/c[[ Вести с полей. EntityFrameworkCore

Вести с полей. EntityFrameworkCore

Не приходя в сознание, запилил каркас провайдера для EntityFrameworkCore, через который получилось выполнить по настоящему интересную штуку:

public static class Test_001
{
 public class MyContext:DbContext
 {
  public DbSet<DUAL> table_DUAL { get; set; }

  protected override void OnConfiguring(DbContextOptionsBuilder optionsBuilder)
  {
   optionsBuilder.UseLcpiOleDbFirebird
    ("provider=LCPI.IBProvider.3;"
     +"location=inet4://localhost/d:\\database\\ram\\ibp_test_fb30_d3.gdb;"
     +"user id=GAMER;"
     +"password=vermut;"
     +"dbclient_type=fb.direct;"
     +"auto_commit=true");
  }//OnConfiguring

  [Table("DUAL")]
  public class DUAL
  {
   public int ID { get; set; }
  };//class DUAL
 };//class MyContext

 [Test]
 public static void Test_01()
 {
  using(var db=new MyContext())
  {
   foreach (var rec in db.table_DUAL)
   {
    Console.WriteLine("ID: {0}",rec.ID);
   }
  }//using
 }//Test_01
};//class Test_001

Теперь можно включать спинной мозг для дополнительной разведки местности.

И мне уже кажется, что UseLcpiOleDbFirebird нужно сократить до UseLcpiOleDb. Потому что, скорее всего получится соорудить универсальный провайдер как для Firebird, так и для InterBase.

Leave a Comment