当前位置: 首页 > news >正文

献县网站建设公司wordpress php fpm

献县网站建设公司,wordpress php fpm,怎么注销网站,成都哪里好玩适合情侣现在有两张表#xff0c;结构一模一样#xff0c;我又不想创建两个一模一样的model#xff0c;就想一个model映射到两张表 废话不多说直接上代码 安装依赖包 创建model namespace oneModelMultiTable.Model {public class Test{public int id { get; set; }public string…现在有两张表结构一模一样我又不想创建两个一模一样的model就想一个model映射到两张表 废话不多说直接上代码 安装依赖包 创建model namespace oneModelMultiTable.Model {public class Test{public int id { get; set; }public string name { get; set; }public string tablename { get; set; }} }创建DBContext 我们需要使用tablename 动态指定表名因此需要在DBContext中添加这个属性 namespace oneModelMultiTable {public class DBHelper:DbContext{public DbSetTest testConfigs { get; set; }public string tablename { get; set; }public DBHelper(DbContextOptionsDBHelper options):base(options){}protected override void OnModelCreating(ModelBuilder modelBuilder){modelBuilder.EntityTest(b {b.ToTable(tablename);b.HasKey(p p.id);});base.OnModelCreating(modelBuilder);//modelBuilder.ApplyConfigurationsFromAssembly(this.GetType().Assembly);}} } 创建DynamicModelCacheKeyFactory 继承IModelCacheKeyFactory using Microsoft.EntityFrameworkCore; using Microsoft.EntityFrameworkCore.Infrastructure; namespace oneModelMultiTable {public class DynamicModelCacheKeyFactory : IModelCacheKeyFactory{public object Create(DbContext context, bool designTime){object p context is DBHelper dynamicContext? (context.GetType(), dynamicContext.tablename): (object)context.GetType();return p;}} }依赖注入 builder.Services.AddDbContextDBHelper(options {options.UseNpgsql(Host192.168.214.133;Port32222;Databasepostgresdb;Usernamepostgresadmin;Passwordadmin123).ReplaceServiceIModelCacheKeyFactory, DynamicModelCacheKeyFactory(); });创建controller using Microsoft.AspNetCore.Mvc; using oneModelMultiTable.Model;// For more information on enabling Web API for empty projects, visit https://go.microsoft.com/fwlink/?LinkID397860namespace oneModelMultiTable.Controllers {[Route(api/[controller]/[action])][ApiController]public class TestController : ControllerBase{public readonly DBHelper dBHelper;public TestController(DBHelper _DBHelper){dBHelper _DBHelper;}// GET: api/TestController[HttpGet]public ListTest Get(string tablename){dBHelper.tablename tablename;return dBHelper.testConfigs.ToList();}} } 原理 你可能想通过ToTable()方法来更改表名但是我们如何在OnModelCreating方法中更改表名呢?当EF构建模型时它只运行OnModelCreating一次。 对于这个场景我们需要通过使用IModelCacheKeyFactory来更改默认映射它允许我们连接到模型缓存机制以便EF可以根据其属性创建不同的模型。 EF使用IModelCacheKeyFactory为模型生成缓存键。 https://yanxiaodi.medium.com/mapping-the-model-to-multiple-tables-with-entityframework-core-b46bdeed8661 https://medium.com/pawel.gerr/entity-framework-core-changing-database-schema-at-runtime-dcf1211768c6 https://github.com/xdqt/asp.net-core/tree/master/oneModelMultiTable
http://www.zqtcl.cn/news/178786/

相关文章:

  • 重庆网站seo营销模板wordpress学习 知乎
  • 桃子网站logowordpress post meta
  • 做网站一般需要什么青岛网络推广
  • 东莞网站建设 光龙wordpress4.6 nodejs
  • 宁海县建设局网站网站建设行业前景
  • 2003网站的建设谷歌seo新手快速入门
  • 网站建设服务开发网页制作下载链接怎么做
  • 网站更改域名河源建网站
  • 陕西培训网站建设校园网站建设目的
  • 做网站赚钱容易吗怎么创建自己网站平台
  • 肥料网站建设江门好的建站网站
  • 女朋友在互联网公司做网站规范网络直播平台的可行性建议
  • wordpress酷站微信推广平台自己可以做
  • 下载类网站如何做wordpress 文章分页 插件
  • 什么做书籍的网站好梅县区住房和城乡规划建设局网站
  • 网站开发的研究方法网站内容规划流程
  • 什么网站可以做数据调查深圳住房城乡建设局网站
  • 民治网站建设yihe kj程序外包公司
  • 男人与女人做视频网站wordpress无法上传图片
  • 二手手表回收网站海外推广渠道有哪些
  • 怎么把地图放到网站上如何做色流量网站
  • 常见的导航网站有哪些郑州核酸vip服务
  • 网站开发老板排名关键词优化师
  • 迈诺网站建设跨境电商平台网站建设
  • 做t恤的网站外贸仿牌网站建设
  • 网站建设的学习网站建站后维护需要做哪些
  • 为什么建设网站很多公司没有网站界面分析
  • 旅游网网站建设的管理大连淘宝网站建设
  • 无锡锡牛网站建设做汽配的外贸网站
  • 黄石公司做网站临湘做网站