• C# 实战笔记


    http://www.cnblogs.com/ymnets/p/3424514.html
    学习点

    关于IEnumerable和IQueryable两接口的区别

    二者都是静态类
    区另主要在:
    (1)所有对于IEnumerable的过滤,排序等操作,都是在内存中发生的。也就是说数据已经从数据库中获取到了内存中,只是在内存中进行过滤和排序操作。
    (2)所有对于IQueryable的过滤,排序等操作,只有在数据真正用到的时候才会到数据库中查询。这也是Linq的延迟加载核心所在。

    表达树 Expression<Func<TEntity, bool>>

    使用表达式树可以将代码表示成一个对象树,在Linq中大量的被应用。树形结构都知道是什么,表达树式的每一个节点都是一个表达式,在C#中我们使用Experssion类进行创建表达式树
    Expression<Func<TEntity, bool>>
    注func<in参数1,out参数2>, 有输入参数,有返回值

    开始项目

    新建层

    1. 基础层
      Pray.Code 基础组件,如文件操作与e-mail组件
      Pray.Data 数据库类,引用Code集,并添加EF框架
    2. 应用层
      Pray.Application 业务 引用Code集、Data集、Domain集、Repository集
      Pray.Domain 接口类与实体,仓库接口.引用Code集、Data集
      Pray.Mapping 映射层,与数据层 引用Code集、Data集、Domain集、
      Pray.Repository 连接仓库,与业务中用来new()实体连接Domain中的接口,并添加EF框架
    3. Web应用层
      Pray.Wed 视图层,UI与控制器 引用app业务层、code集、Domain、Mapping集

    创建基础控制器

    JS相关
    修改
    .attr({title="dfs",style="padding:5px;"});
    .append()添加到结尾

    框架的相关备忘

    添加一个实体的过程:

    1、数据库映射

    在Mapping里映射LogEntity 为实体

    using System.Data.Entity.ModelConfiguration;
    public class LogMap : EntityTypeConfiguration<LogEntity>
        {
            public LogMap()
            {
                this.ToTable("Sys_Log");
                this.HasKey(t => t.F_Id);
            }
        }
    

    2、在Domain层03 Entity添加实体结构

    /// <summary>
        /// 操作日志实体
        /// </summary>
        public class LogEntity : IEntity<LogEntity>, ICreationAudited
        {
            /// <summary>
            /// id
            /// </summary>
            public string F_Id { get; set; }
            /// <summary>
            /// 时间
            /// </summary>
            public DateTime? F_Date { get; set; }
        }
    

    3、在Domain层04 IRepository添加泛型接口

     public interface ILogRepository : IRepositoryBase<LogEntity>
        {
        }
    

    4、在Repository层里添加非泛型接口

    public class LogRepository : RepositoryBase<LogEntity>, ILogRepository
        {
        }
    

    5、最后在Application层添加应用层

    jQuery

    prepend在前面添加元素
    removeClass

  • 相关阅读:
    git提交代码到远程仓库github
    git报错记录
    关于VSCode的一些设置
    css之列表数据前加上小方框
    EChats使用报错之 《"TypeError: Cannot read property 'getAttribute' of undefined"》
    EChats使用之给图表加箭头以及渐变
    vue报错之(Do not use v-for index as key on <transition-group> children)
    在vue项目中使用mock模拟数据
    Vue项目中关于EChats的使用
    使用mock数据实现登录时的一次bug记录
  • 原文地址:https://www.cnblogs.com/praybb/p/10605421.html
Copyright © 2020-2023  润新知