• 将视图批量新增到PowerDesigner中并以model图表的形式展示


    1:需求

    数据库中的所有视图大概64个左右,都需要新增到PowerDesigner中,以图表(model)的形式给展示出来,如下:

    2:问题点:

    由于2020年春节期间病毒的原因,我们需要远程办公,新的数据库上面并没有存在视图,
    数据库上面并没有存在视图,这个改怎么导入到PowerDesigner上面去(以图形的PDM的可视化显示出来)
    看了实体的模型,字段都有几十个的样子,太长。如果手动一个一个的新增到PowerDesigner上面,工作量太大,也会出错或者是遗漏的情况!

    3:解决问题的思路:

    3.1:由于Model层里面有视图的实体,我这边就单独再生成到一个临时的数据库中(生成一张一张的表);
    3.2:CodeFirest的时候发现,报错提示存在多个DbContent对象。这里先新增一个表,及新增permary key,看是否生成OK,成功之后再批量生成表到数据库
    这里需要我们给指定一下,如:1:add-migration init -c LoseViewContecnt 2:update-datebase -c LoseViewContent

    3.3: 实在不想写 public DbSet<*****> **** { get; set; } 这样重复的代码,这里就写了一个批量生成代码的临时小工具

    string assemblyPath = @"D:MyCore3.1TestLoseViewTableinDebug
    etcoreapp3.1LoseViewTable.dll";
    Assembly assembly = Assembly.LoadFrom(assemblyPath);
    StringBuilder sb = new StringBuilder();
    if (assembly!=null)
    {
    Type[] typeList= assembly.GetTypes();
    foreach (var item in typeList)
    {
    string name = "public DbSet&lt;" + item.Name + "&gt; " + item.Name + "{ get; set; }<br/>";
    sb.Append(name);
    }
    }
    ViewBag.result = sb.ToString();
    return View();
    
    <body>
    @Html.Raw(@ViewBag.result)
    </body>

    3.4://--将批量生成到临时的N多代码拷贝到这里 

    public class LoseViewContent : DbContext{ 
    
    public DbSet<get_class_course_group_view> get_class_course_group_view { get; set; }
    
    *****    
    
    }

    3.5:批量生成表到一个临时的数据库

    add-migration addTables02 -c LoseViewContent

    update-database -c LoseViewContent

     4:从Powerdesigner批量添加表

    4.1 选中要新增到的PDM 右击Database
    4.2 update model From DataBase
    4.3 新增ODBC对应的配置文件,建议不要在里面写密码,如果是自己的电脑可以写入密码

    4.4 选中好对应的User即数据库名称

    4.5 OK开始批量新增模型到PowerDesigner


  • 相关阅读:
    模态框获取内容jQuery
    jQuery支持链式编程,一句话实现左侧table页+常用筛选器总结
    jquery实现全选、取消反选、加JavaScript三元运算(三种法法实现反选)
    用dom1来实现,根据光标移动自动给表单加上背景色,光标移开自动去除背景色
    JavaScript两种创建标签的的方法,实现点击按钮让text自增
    vue前端路由搜索功能实现
    pycharm配置vue
    QT全局事件和绑定
    mysql事务、锁
    web前端上传文件按钮自定义样式
  • 原文地址:https://www.cnblogs.com/Fengge518/p/12249396.html
Copyright © 2020-2023  润新知