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

网站推广服务好公司排名网站收录做关键词排名

网站推广服务好公司排名,网站收录做关键词排名,wordpress内部服务器错误,网站建设 电子政务现在有两张表#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.hkea.cn/news/14491195/

相关文章:

  • 赣州建站九江市seo
  • 建网站做淘宝客可以吗网站虚拟主机
  • 网站建设方面的销售经验一起做网店17广州沙河
  • 搜索引擎网站排名优化方案大连建设工业产品网站
  • 建设企业网站开发公司未成年人思想道德建设网站
  • 百度云自助建站wordpress会被黑吗
  • 自己做卖东西的网站庆阳市建设局网站
  • 做小程序的平台seo关键词优化方案
  • 龙华营销型网站建设公司邯郸网站建设联系电话
  • 买服务器网站wordpress与微信小程序
  • seoshanghai net重庆seo案例
  • 自己用iis怎么建设网站建设银行网站官网登录短信验证
  • 高权重网站做员会来顶排名网络科技有限公司注册资金最低
  • 用python做网站怎么赚钱做系统网站提醒有风险
  • php网站下载房屋装修在线设计网站
  • 静态网站开发课程相关新闻怎么修改WordPress目錄名字
  • 网络营销模式的有形收益包括襄阳seo关键词优化公司
  • s网站优化广州网络推广培训
  • 做医疗器械网站怎么找高清大图天津网站排名优化费用
  • 省建设厅网站查询电商运营适合女生吗
  • 网站设计与制作说明书国外网站界面
  • 网站建设 搞笑笑话怎么查询网站的设计公司
  • 网站建设公司网站源码政务网站开发理念
  • 沈阳网站建设设计wordpress插件下载失败
  • 网站建设客户怎么找网站页面设计需求
  • 导航网站建站系统建设部网站公示
  • 毕业设计网站源码嵌入式累还是程序员累
  • 网站开发公司找哪家建立文档
  • 代做网站公司有哪些wordpress pre标签
  • 做网站要自己租服务器仿朋友圈网站建设