zoukankan      html  css  js  c++  java
  • Farseer.net轻量级ORM开源框架 V1.x 入门篇:视图实体类映射

    导航

    目   录:Farseer.net轻量级ORM开源框架 目录

    上一篇:Farseer.net轻量级ORM开源框架 V1.x 入门篇:表的数据操作

    下一篇:Farseer.net轻量级ORM开源框架 V1.x 入门篇:视图的数据操作

    前言

      在V1.0中,新增了视图的映射。在以往的版本中,视图是当成”表“来操作的。

      但是我们的视图通常只是为了方便查询而建的。而表支持写操作。会显的很不入调(当然MSSQL的视图也是支持写的,但是这里的视图映射是为了只读视图而来的)

      先看下我DEMO中的上下文与视图实体的关联:

        public class View : DbContext<View>
        {
            [Set(Name = "View_Account")]
            public ViewSet<AccountVO> Account { get; set; }
        }

      它的各个视图由ViewSet封装:针对数据库视图提供的一系列查询的操作。被ViewSet包含的就是视图字段了。

    VO实体类

    1、视图实体类:

     1 public class AccountVO
     2 {
     3     /// <summary> 用户ID </summary>
     4     public int? ID { get; set; }
     5     /// <summary> 用户名 </summary>
     6     public string Name { get; set; }
     7     /// <summary> 密码 </summary>
     8     public string Pwd { get; set; }
     9     /// <summary> 登陆IP </summary>
    10     [Field(Name = "getdate()")]
    11     public string GetDate { get; set; }
    12 }

      事实上,视图与表的实体是基本相同的。即视图有的功能,表也肯定有。(在内部里,TableSet与ViewSet均继承:DbReadSet(只读查询操作))的。

      所以,TableSet中的所有查询操作。ViewSet也有的。

      特性上与表的特性也是共用的。除了针对插入、更新的特性属性,其它都是一样的。故在这里不再一一叙述了。

    导航

    目   录:Farseer.net轻量级ORM开源框架 目录

    上一篇:Farseer.net轻量级ORM开源框架 V1.x 入门篇:表的数据操作

    下一篇:Farseer.net轻量级ORM开源框架 V1.x 入门篇:视图的数据操作

    广告时间

    QQ群:116228666 (Farseer.net开源框架交流) 请注明:Farseer.Net

    Farseer.Net是一款ORM框架 + 常用工具 + 扩展集合。

    Farseer 寓意:先知、预言家 通常在某些场合时,提供计谋、策略。也希望该框架能给大家提供最大化的便捷。

    ORM:其英文全称是:Object(对象) Relational(关系) Mapping(映射)

    Farseer.Net的目标是:快速上手、快速开发、简单方便。

    1 Table.Data.User.Where(o=>o.ID == 1).ToEntity();
    2 Table.Data.User.Where(o=>o.ID > 1).ToList();
    3 Table.Data.User.Where(o=>o.ID != 0).Delete();
    4 Table.Data.User.Where(o=>o.ID != 0).AddUp(o=>o.LoginCount, 1);
    5 Table.Data.User.Where(o=>o.ID == 1).Update(new User{ UserName = "newName" });
    6 Table.Data.User.Insert(new User{ UserName = "newName" });
  • 相关阅读:
    exp 和imp 与expdp / impdp 区别
    nginx优化
    nginx root alias proxypass
    mysql3
    logrotate 用法
    SQL执行顺序
    http与RPC的关系
    docker
    windows 时间同步
    Java生成指定长度的随机字符串
  • 原文地址:https://www.cnblogs.com/steden/p/4555266.html
Copyright © 2011-2022 走看看