<?xml version="1.0"?>
<doc>
<assembly>
<name>XCode</name>
</assembly>
<members>
<member name="T:XCode.BindColumnAttribute">
<summary>指定实体类属性所绑定数据字段信息。</summary>
</member>
<member name="P:XCode.BindColumnAttribute.Name">
<summary>字段名</summary>
</member>
<member name="P:XCode.BindColumnAttribute.Description">
<summary>描述</summary>
</member>
<member name="P:XCode.BindColumnAttribute.RawType">
<summary>
原始数据类型。
当且仅当目标数据库同为该数据库类型时,采用实体属性信息上的RawType作为反向工程的目标字段类型,以期获得开发和生产的最佳兼容。
</summary>
</member>
<member name="P:XCode.BindColumnAttribute.Precision">
<summary>精度</summary>
</member>
<member name="P:XCode.BindColumnAttribute.Scale">
<summary>位数</summary>
</member>
<member name="P:XCode.BindColumnAttribute.Master">
<summary>是否主字段。主字段作为业务主要字段,代表当前数据行意义</summary>
</member>
<member name="M:XCode.BindColumnAttribute.#ctor">
<summary>构造函数</summary>
</member>
<member name="M:XCode.BindColumnAttribute.#ctor(System.String)">
<summary>构造函数</summary>
<param name="name">字段名</param>
</member>
<member name="M:XCode.BindColumnAttribute.#ctor(System.String,System.String,System.String)">
<summary>构造函数</summary>
<param name="name">名称</param>
<param name="description"></param>
<param name="rawType"></param>
</member>
<member name="M:XCode.BindColumnAttribute.#ctor(System.String,System.String,System.String,System.Int32,System.Int32)">
<summary>构造函数</summary>
<param name="name">名称</param>
<param name="description"></param>
<param name="rawType"></param>
<param name="precision"></param>
<param name="scale"></param>
</member>
<member name="M:XCode.BindColumnAttribute.#ctor(System.Int32,System.String,System.String)">
<summary>构造函数</summary>
<param name="order"></param>
<param name="name">名称</param>
<param name="description"></param>
</member>
<member name="M:XCode.BindColumnAttribute.#ctor(System.Int32,System.String,System.String,System.String,System.Int32,System.Int32)">
<summary>构造函数</summary>
<param name="order">名称</param>
<param name="name">名称</param>
<param name="description"></param>
<param name="rawType"></param>
<param name="precision"></param>
<param name="scale"></param>
</member>
<member name="M:XCode.BindColumnAttribute.#ctor(System.Int32,System.String,System.String,System.String,System.String,System.Int32,System.Int32,System.Boolean)">
<summary>构造函数</summary>
<param name="order"></param>
<param name="name">名称</param>
<param name="description"></param>
<param name="defaultValue"></param>
<param name="rawType"></param>
<param name="precision"></param>
<param name="scale"></param>
<param name="isUnicode"></param>
</member>
<member name="M:XCode.BindColumnAttribute.GetCustomAttribute(System.Reflection.MemberInfo)">
<summary>检索应用于类型成员的自定义属性。</summary>
<param name="element"></param>
<returns></returns>
</member>
<member name="T:XCode.BindIndexAttribute">
<summary>用于指定数据类所绑定到的索引</summary>
</member>
<member name="P:XCode.BindIndexAttribute.Name">
<summary>名称</summary>
</member>
<member name="P:XCode.BindIndexAttribute.Unique">
<summary>是否唯一</summary>
</member>
<member name="P:XCode.BindIndexAttribute.Columns">
<summary>数据列集合</summary>
</member>
<member name="M:XCode.BindIndexAttribute.#ctor(System.String,System.Boolean,System.String)">
<summary>指定一个索引</summary>
<param name="name">名称</param>
<param name="unique"></param>
<param name="columns"></param>
</member>
<member name="M:XCode.BindIndexAttribute.Fill(XCode.DataAccessLayer.IDataIndex)">
<summary>填充索引</summary>
<param name="index"></param>
</member>
<member name="T:XCode.MapAttribute">
<summary>用于指定数据属性映射关系</summary>
</member>
<member name="P:XCode.MapAttribute.Name">
<summary>数据列</summary>
</member>
<member name="P:XCode.MapAttribute.Provider">
<summary>目标提供者</summary>
</member>
<member name="M:XCode.MapAttribute.#ctor(System.String)">
<summary>指定一个表内关联关系</summary>
<param name="column"></param>
</member>
<member name="M:XCode.MapAttribute.#ctor(System.String,System.Type,System.String)">
<summary>指定一个关系</summary>
<param name="name"></param>
<param name="type"></param>
<param name="key"></param>
</member>
<member name="T:XCode.MapProvider">
<summary>映射提供者</summary>
</member>
<member name="P:XCode.MapProvider.EntityType">
<summary>实体类型</summary>
</member>
<member name="P:XCode.MapProvider.Key">
<summary>关联键</summary>
</member>
<member name="M:XCode.MapProvider.GetDataSource">
<summary>获取数据源</summary>
<returns></returns>
</member>
<member name="T:XCode.BindTableAttribute">
<summary>指定实体类所绑定的数据表信息。</summary>
</member>
<member name="P:XCode.BindTableAttribute.Name">
<summary>
表名。
可以在配置文件中通过XCode.ConnMaps把实体映射到别的数据表上
</summary>
</member>
<member name="P:XCode.BindTableAttribute.Description">
<summary>描述</summary>
</member>
<member name="P:XCode.BindTableAttribute.ConnName">
<summary>
连接名。
实体类的所有数据库操作,将发生在该连接名指定的数据库连接上。
此外,可动态修改实体类在当前线程上的连接名(改Meta.ConnName);
也可以在配置文件中通过XCode.ConnMaps把连接名映射到别的连接上。
</summary>
</member>
<member name="P:XCode.BindTableAttribute.DbType">
<summary>
数据库类型。
仅用于记录实体类由何种类型数据库生成,当且仅当目标数据库同为该数据库类型时,采用实体属性信息上的RawType作为反向工程的目标字段类型,以期获得开发和生产的最佳兼容。
</summary>
</member>
<member name="P:XCode.BindTableAttribute.IsView">
<summary>是否视图</summary>
</member>
<member name="M:XCode.BindTableAttribute.#ctor(System.String)">
<summary>构造函数</summary>
<param name="name">表名</param>
</member>
<member name="M:XCode.BindTableAttribute.#ctor(System.String,System.String)">
<summary>构造函数</summary>
<param name="name">表名</param>
<param name="description">描述</param>
</member>
<member name="M:XCode.BindTableAttribute.#ctor(System.String,System.String,System.String,XCode.DataAccessLayer.DatabaseType,System.Boolean)">
<summary>构造函数</summary>
<param name="name">表名</param>
<param name="description">描述</param>
<param name="connName"></param>
<param name="dbType"></param>
<param name="isView"></param>
</member>
<member name="T:XCode.Cache.DataCache">
<summary>运行数据缓存</summary>
</member>
<member name="P:XCode.Cache.DataCache.Current">
<summary>当前实例</summary>
</member>
<member name="P:XCode.Cache.DataCache.Name">
<summary>名称</summary>
</member>
<member name="M:XCode.Cache.DataCache.Load(System.String,System.Boolean)">
<summary>加载</summary>
<param name="file"></param>
<param name="create"></param>
<returns></returns>
</member>
<member name="M:XCode.Cache.DataCache.Save(System.String,XCode.Cache.DataCache)">
<summary>保存</summary>
<param name="file"></param>
<param name="data"></param>
</member>
<member name="M:XCode.Cache.DataCache.SaveAsync">
<summary>异步保存</summary>
</member>
<member name="P:XCode.Cache.DataCache.Counts">
<summary>每个表总记录数</summary>
</member>
<member name="P:XCode.Cache.DataCache.FieldCache">
<summary>字段缓存,每个缓存项的值</summary>
</member>
<member name="T:XCode.Cache.FieldCache`1">
<summary>统计字段缓存</summary>
<typeparam name="TEntity"></typeparam>
</member>
<member name="P:XCode.Cache.FieldCache`1.MaxRows">
<summary>最大行数。默认20</summary>
</member>
<member name="P:XCode.Cache.FieldCache`1.GetDisplay">
<summary>获取显示名的委托</summary>
</member>
<member name="P:XCode.Cache.FieldCache`1.DisplayFormat">
<summary>显示名格式化字符串,两个参数是名称和个数</summary>
</member>
<member name="M:XCode.Cache.FieldCache`1.#ctor(XCode.Configuration.FieldItem)">
<summary>对指定字段使用实体缓存</summary>
<param name="field"></param>
</member>
<member name="M:XCode.Cache.FieldCache`1.FindAllName">
<summary>获取所有类别名称</summary>
<returns></returns>
</member>
<member name="M:XCode.Cache.FieldCache`1.ToString">
<summary>输出名称</summary>
<returns></returns>
</member>
<member name="T:XCode.Cache.IEntityCacheBase">
<summary>缓存基接口</summary>
</member>
<member name="P:XCode.Cache.IEntityCacheBase.ConnName">
<summary>连接名</summary>
</member>
<member name="P:XCode.Cache.IEntityCacheBase.TableName">
<summary>表名</summary>
</member>
<member name="T:XCode.Cache.IEntityCache">
<summary>实体缓存接口</summary>
</member>
<member name="P:XCode.Cache.IEntityCache.Entities">
<summary>实体集合。因为涉及一个转换,数据量大时很耗性能,建议不要使用。</summary>
</member>
<member name="M:XCode.Cache.IEntityCache.Clear(System.String)">
<summary>清除缓存</summary>
</member>
<member name="T:XCode.Cache.ISingleEntityCache">
<summary>单对象缓存接口</summary>
</member>
<member name="P:XCode.Cache.ISingleEntityCache.Expire">
<summary>过期时间。单位是秒,默认60秒</summary>
</member>
<member name="P:XCode.Cache.ISingleEntityCache.MaxEntity">
<summary>最大实体数。默认10000</summary>
</member>
<member name="P:XCode.Cache.ISingleEntityCache.Using">
<summary>是否在使用缓存</summary>
</member>
<member name="P:XCode.Cache.ISingleEntityCache.Item(System.Object)">
<summary>获取数据</summary>
<param name="key"></param>
<returns></returns>
</member>
<member name="M:XCode.Cache.ISingleEntityCache.GetItemWithSlaveKey(System.String)">
<summary>根据从键获取实体数据</summary>
<param name="slaveKey"></param>
<returns></returns>
</member>
<member name="M:XCode.Cache.ISingleEntityCache.ContainsKey(System.Object)">
<summary>是否包含指定主键</summary>
<param name="key"></param>
<returns></returns>
</member>
<member name="M:XCode.Cache.ISingleEntityCache.ContainsSlaveKey(System.String)">
<summary>是否包含指定从键</summary>
<param name="key"></param>
<returns></returns>
</member>
<member name="M:XCode.Cache.ISingleEntityCache.Add(XCode.IEntity)">
<summary>向单对象缓存添加项</summary>
<param name="value">实体对象</param>
<returns></returns>
</member>
<member name="M:XCode.Cache.ISingleEntityCache.Remove(XCode.IEntity)">
<summary>移除指定项</summary>
<param name="entity"></param>
</member>
<member name="M:XCode.Cache.ISingleEntityCache.Clear(System.String)">
<summary>清除所有数据</summary>
<param name="reason">清除缓存原因</param>
</member>
<member name="T:XCode.Cache.ISingleEntityCache`2">
<summary></summary>
<typeparam name="TKey"></typeparam>
<typeparam name="TEntity"></typeparam>
</member>
<member name="P:XCode.Cache.ISingleEntityCache`2.Item(`0)">
<summary>获取数据</summary>
<param name="key"></param>
<returns></returns>
</member>
<member name="P:XCode.Cache.ISingleEntityCache`2.GetKeyMethod">
<summary>获取缓存主键的方法,默认方法为获取实体主键值</summary>
</member>
<member name="P:XCode.Cache.ISingleEntityCache`2.FindKeyMethod">
<summary>查找数据的方法</summary>
</member>
<member name="P:XCode.Cache.ISingleEntityCache`2.SlaveKeyIgnoreCase">
<summary>从键是否区分大小写</summary>
</member>
<member name="P:XCode.Cache.ISingleEntityCache`2.FindSlaveKeyMethod">
<summary>根据从键查找数据的方法</summary>
</member>
<member name="P:XCode.Cache.ISingleEntityCache`2.GetSlaveKeyMethod">
<summary>获取缓存从键的方法,默认为空</summary>
</member>
<member name="T:XCode.Cache.CacheBase`1">
<summary>缓存基类</summary>
</member>
<member name="P:XCode.Cache.CacheBase`1.ConnName">
<summary>连接名</summary>
</member>
<member name="P:XCode.Cache.CacheBase`1.TableName">
<summary>表名</summary>
</member>
<member name="M:XCode.Cache.CacheBase`1.Invoke``2(System.Func{``0,``1},``0)">
<summary>调用委托方法前设置连接名和表名,调用后还原</summary>
</member>
<member name="T:XCode.Cache.CacheBase">
<summary>缓存基类</summary>
</member>
<member name="P:XCode.Cache.CacheBase.Debug">
<summary>是否调试缓存模块</summary>
</member>
<member name="P:XCode.Cache.CacheBase.Period">
<summary>显示统计信息的周期。默认60*60s,DAL.Debug=true时10*60s,Debug=true时60s</summary>
</member>
<member name="M:XCode.Cache.CacheBase.CheckShowStatics(System.Int32@,System.Action)">
<summary>检查并显示统计信息</summary>
<param name="total"></param>
<param name="show"></param>
</member>
<member name="T:XCode.Cache.EntityCache`1">
<summary>实体缓存</summary>
<remarks>
第一次读取缓存的时候,同步从数据库读取,这样子手上有一份数据。
以后更新,都开异步线程去读取,而当前马上返回,让大家继续用着旧数据,这么做性能非常好。
</remarks>
<typeparam name="TEntity">实体类型</typeparam>
</member>
<member name="P:XCode.Cache.EntityCache`1.ExpiredTime">
<summary>缓存过期时间</summary>
</member>
<member name="P:XCode.Cache.EntityCache`1.Times">
<summary>缓存更新次数</summary>
</member>
<member name="P:XCode.Cache.EntityCache`1.Expire">
<summary>过期时间。单位是秒,默认60秒</summary>
</member>
<member name="P:XCode.Cache.EntityCache`1.FillListMethod">
<summary>填充数据的方法</summary>
</member>
<member name="P:XCode.Cache.EntityCache`1.WaitFirst">
<summary>是否等待第一次查询。如果不等待,第一次返回空集合。默认true</summary>
</member>
<member name="P:XCode.Cache.EntityCache`1.Using">
<summary>是否在使用缓存,在不触发缓存动作的情况下检查是否有使用缓存</summary>
</member>
<member name="M:XCode.Cache.EntityCache`1.#ctor">
<summary>实例化实体缓存</summary>
</member>
<member name="P:XCode.Cache.EntityCache`1.Entities">
<summary>实体集合。无数据返回空集合而不是null</summary>
</member>
<member name="M:XCode.Cache.EntityCache`1.Find(System.Predicate{`0})">
<summary>检索与指定谓词定义的条件匹配的所有元素。</summary>
<param name="match">条件</param>
<returns></returns>
</member>
<member name="M:XCode.Cache.EntityCache`1.FindAll(System.Predicate{`0})">
<summary>检索与指定谓词定义的条件匹配的所有元素。</summary>
<param name="match">条件</param>
<returns></returns>
</member>
<member name="M:XCode.Cache.EntityCache`1.Clear(System.String)">
<summary>清除缓存</summary>
</member>
<member name="F:XCode.Cache.EntityCache`1.Total">
<summary>总次数</summary>
</member>
<member name="F:XCode.Cache.EntityCache`1.Success">
<summary>命中</summary>
</member>
<member name="M:XCode.Cache.EntityCache`1.ShowStatics">
<summary>显示统计信息</summary>
</member>
<member name="M:XCode.Cache.EntityCache`1.ToString">
<summary>输出名称</summary>
<returns></returns>
</member>
<member name="T:XCode.Cache.SingleEntityCache`2">
<summary>单对象缓存</summary>
<remarks>
用一个值为实体的字典作为缓存(键一般就是主键),适用于单表大量互相没有关系的数据。
</remarks>
<typeparam name="TKey">键值类型</typeparam>
<typeparam name="TEntity">实体类型</typeparam>
</member>
<member name="P:XCode.Cache.SingleEntityCache`2.Expire">
<summary>过期时间。单位是秒,默认60秒</summary>
</member>
<member name="P:XCode.Cache.SingleEntityCache`2.MaxEntity">
<summary>最大实体数。默认10000</summary>
</member>
<member name="P:XCode.Cache.SingleEntityCache`2.Using">
<summary>是否在使用缓存</summary>
</member>
<member name="P:XCode.Cache.SingleEntityCache`2.GetKeyMethod">
<summary>获取缓存主键的方法,默认方法为获取实体主键值</summary>
</member>
<member name="P:XCode.Cache.SingleEntityCache`2.FindKeyMethod">
<summary>查找数据的方法</summary>
</member>
<member name="P:XCode.Cache.SingleEntityCache`2.SlaveKeyIgnoreCase">
<summary>从键是否区分大小写</summary>
</member>
<member name="P:XCode.Cache.SingleEntityCache`2.FindSlaveKeyMethod">
<summary>根据从键查找数据的方法</summary>
</member>
<member name="P:XCode.Cache.SingleEntityCache`2.GetSlaveKeyMethod">
<summary>获取缓存从键的方法,默认为空</summary>
</member>
<member name="M:XCode.Cache.SingleEntityCache`2.#ctor">
<summary>实例化一个实体缓存</summary>
</member>
<member name="M:XCode.Cache.SingleEntityCache`2.OnDispose(System.Boolean)">
<summary>子类重载实现资源释放逻辑时必须首先调用基类方法</summary>
<param name="disposing">从Dispose调用(释放所有资源)还是析构函数调用(释放非托管资源)。
因为该方法只会被调用一次,所以该参数的意义不太大。</param>
</member>
<member name="T:XCode.Cache.SingleEntityCache`2.CacheItem">
<summary>缓存对象</summary>
</member>
<member name="P:XCode.Cache.SingleEntityCache`2.CacheItem.Key">
<summary>键</summary>
</member>
<member name="P:XCode.Cache.SingleEntityCache`2.CacheItem.SlaveKey">
<summary>从键</summary>
</member>
<member name="P:XCode.Cache.SingleEntityCache`2.CacheItem.Entity">
<summary>实体</summary>
</member>
<member name="P:XCode.Cache.SingleEntityCache`2.CacheItem.VisitTime">
<summary>访问时间</summary>
</member>
<member name="P:XCode.Cache.SingleEntityCache`2.CacheItem.ExpireTime">
<summary>缓存过期时间</summary>
</member>
<member name="P:XCode.Cache.SingleEntityCache`2.CacheItem.Expired">
<summary>是否已经过期</summary>
</member>
<member name="F:XCode.Cache.SingleEntityCache`2._Count">
<summary>缓存个数</summary>
</member>
<member name="F:XCode.Cache.SingleEntityCache`2.Entities">
<summary>单对象缓存</summary>
</member>
<member name="P:XCode.Cache.SingleEntityCache`2.SlaveEntities">
<summary>单对象缓存,从键查询使用</summary>
</member>
<member name="F:XCode.Cache.SingleEntityCache`2.Total">
<summary>总次数</summary>
</member>
<member name="F:XCode.Cache.SingleEntityCache`2.Success">
<summary>命中</summary>
</member>
<member name="M:XCode.Cache.SingleEntityCache`2.ShowStatics">
<summary>显示统计信息</summary>
</member>
<member name="P:XCode.Cache.SingleEntityCache`2.Item(`0)">
<summary>根据主键获取实体数据</summary>
<param name="key"></param>
<returns></returns>
</member>
<member name="M:XCode.Cache.SingleEntityCache`2.AddItem(`0,`1)">
<summary>向两个字典加入数据</summary>
<param name="key"></param>
<param name="entity"></param>
<returns></returns>
</member>
<member name="M:XCode.Cache.SingleEntityCache`2.GetItemWithSlaveKey(System.String)">
<summary>根据从键获取实体数据</summary>
<param name="slaveKey"></param>
<returns></returns>
</member>
<member name="M:XCode.Cache.SingleEntityCache`2.ContainsKey(`0)">
<summary>是否包含指定键</summary>
<param name="key"></param>
<returns></returns>
</member>
<member name="M:XCode.Cache.SingleEntityCache`2.ContainsSlaveKey(System.String)">
<summary>是否包含指定从键</summary>
<param name="key"></param>
<returns></returns>
</member>
<member name="M:XCode.Cache.SingleEntityCache`2.Add(`0,`1)">
<summary>向单对象缓存添加项</summary>
<param name="key"></param>
<param name="entity">数值</param>
<returns></returns>
</member>
<member name="M:XCode.Cache.SingleEntityCache`2.RemoveKey(`0)">
<summary>移除指定项</summary>
<param name="key">键值</param>
</member>
<member name="M:XCode.Cache.SingleEntityCache`2.Remove(`1)">
<summary>根据主键移除指定项</summary>
<param name="entity"></param>
</member>
<member name="M:XCode.Cache.SingleEntityCache`2.Clear(System.String)">
<summary>清除所有数据</summary>
<param name="reason">清除缓存原因</param>
</member>
<member name="P:XCode.Cache.SingleEntityCache`2.XCode#Cache#ISingleEntityCache#Item(System.Object)">
<summary>获取数据</summary>
<param name="key"></param>
<returns></returns>
</member>
<member name="M:XCode.Cache.SingleEntityCache`2.XCode#Cache#ISingleEntityCache#GetItemWithSlaveKey(System.String)">
<summary>根据从键获取实体数据</summary>
<param name="slaveKey"></param>
<returns></returns>
</member>
<member name="M:XCode.Cache.SingleEntityCache`2.XCode#Cache#ISingleEntityCache#ContainsKey(System.Object)">
<summary>是否包含指定主键</summary>
<param name="key"></param>
<returns></returns>
</member>
<member name="M:XCode.Cache.SingleEntityCache`2.XCode#Cache#ISingleEntityCache#Remove(XCode.IEntity)">
<summary>移除指定项</summary>
<param name="entity"></param>
</member>
<member name="M:XCode.Cache.SingleEntityCache`2.XCode#Cache#ISingleEntityCache#Add(XCode.IEntity)">
<summary>向单对象缓存添加项</summary>
<param name="value">实体对象</param>
<returns></returns>
</member>
<member name="M:XCode.Cache.SingleEntityCache`2.ToString">
<summary>已重载。</summary>
<returns></returns>
</member>
<member name="T:XCode.Code.ClassBuilder">
<summary>类代码生成器</summary>
</member>
<member name="P:XCode.Code.ClassBuilder.Writer">
<summary>写入器</summary>
</member>
<member name="P:XCode.Code.ClassBuilder.Table">
<summary>数据表</summary>
</member>
<member name="P:XCode.Code.ClassBuilder.Namespace">
<summary>命名空间</summary>
</member>
<member name="P:XCode.Code.ClassBuilder.Usings">
<summary>引用命名空间</summary>
</member>
<member name="P:XCode.Code.ClassBuilder.Pure">
<summary>纯净类</summary>
</member>
<member name="P:XCode.Code.ClassBuilder.Interface">
<summary>生成接口</summary>
</member>
<member name="P:XCode.Code.ClassBuilder.BaseClass">
<summary>基类</summary>
</member>
<member name="M:XCode.Code.ClassBuilder.#ctor">
<summary>实例化</summary>
</member>
<member name="M:XCode.Code.ClassBuilder.Execute">
<summary>执行生成</summary>
</member>
<member name="M:XCode.Code.ClassBuilder.OnExecuting">
<summary>生成头部</summary>
</member>
<member name="M:XCode.Code.ClassBuilder.BuildClassHeader">
<summary>实体类头部</summary>
</member>
<member name="M:XCode.Code.ClassBuilder.GetClassName">
<summary>获取类名</summary>
<returns></returns>
</member>
<member name="M:XCode.Code.ClassBuilder.GetBaseClass">
<summary>获取基类</summary>
<returns></returns>
</member>
<member name="M:XCode.Code.ClassBuilder.BuildAttribute">
<summary>实体类头部</summary>
</member>
<member name="M:XCode.Code.ClassBuilder.OnExecuted">
<summary>生成尾部</summary>
</member>
<member name="M:XCode.Code.ClassBuilder.BuildItems">
<summary>生成主体</summary>
</member>
<member name="M:XCode.Code.ClassBuilder.BuildItem(XCode.DataAccessLayer.IDataColumn)">
<summary>生成每一项</summary>
</member>
<member name="M:XCode.Code.ClassBuilder.SetIndent(System.Boolean)">
<summary>设置缩进</summary>
<param name="add"></param>
</member>
<member name="M:XCode.Code.ClassBuilder.WriteLine(System.String)">
<summary>写入</summary>
<param name="value"></param>
</member>
<member name="M:XCode.Code.ClassBuilder.WriteLine(System.String,System.Object[])">
<summary>写入</summary>
<param name="format"></param>
<param name="args"></param>
</member>
<member name="M:XCode.Code.ClassBuilder.Clear">
<summary>清空,重新生成</summary>
</member>
<member name="M:XCode.Code.ClassBuilder.ToString">
<summary>输出结果</summary>
<returns></returns>
</member>
<member name="P:XCode.Code.ClassBuilder.Output">
<summary>输出目录</summary>
</member>
<member name="M:XCode.Code.ClassBuilder.Save(System.String,System.Boolean)">
<summary>保存文件,返回文件路径</summary>
</member>
<member name="P:XCode.Code.ClassBuilder.CSharp">
<summary>C#版本</summary>
</member>
<member name="M:XCode.Code.ClassBuilder.NameOf(System.String)">
<summary>nameof</summary>
<param name="name"></param>
<returns></returns>
</member>
<member name="P:XCode.Code.ClassBuilder.Debug">
<summary>是否调试</summary>
</member>
<member name="P:XCode.Code.ClassBuilder.Log">
<summary>日志</summary>
</member>
<member name="M:XCode.Code.ClassBuilder.WriteLog(System.String,System.Object[])">
<summary>写日志</summary>
<param name="format"></param>
<param name="args"></param>
</member>
<member name="T:XCode.Code.EntityBuilder">
<summary>实体类生成器</summary>
</member>
<member name="P:XCode.Code.EntityBuilder.ConnName">
<summary>连接名</summary>
</member>
<member name="P:XCode.Code.EntityBuilder.GenericType">
<summary>泛型实体类。泛型参数名TEntity</summary>
</member>
<member name="P:XCode.Code.EntityBuilder.Business">
<summary>业务类。</summary>
</member>
<member name="P:XCode.Code.EntityBuilder.AllTables">
<summary>所有表类型名。用于扩展属性</summary>
</member>
<member name="M:XCode.Code.EntityBuilder.#ctor">
<summary>实例化</summary>
</member>
<member name="M:XCode.Code.EntityBuilder.Build(System.String,System.String,System.String,System.String)">
<summary>为Xml模型文件生成实体类</summary>
<param name="xmlFile">模型文件</param>
<param name="output">输出目录</param>
<param name="nameSpace">命名空间</param>
<param name="connName">连接名</param>
</member>
<member name="M:XCode.Code.EntityBuilder.BuildTables(System.Collections.Generic.IList{XCode.DataAccessLayer.IDataTable},System.String,System.String,System.String,System.String)">
<summary>为Xml模型文件生成实体类</summary>
<param name="tables">模型文件</param>
<param name="output">输出目录</param>
<param name="nameSpace">命名空间</param>
<param name="connName">连接名</param>
<param name="baseClass">基类</param>
</member>
<member name="M:XCode.Code.EntityBuilder.Execute">
<summary>执行生成</summary>
</member>
<member name="M:XCode.Code.EntityBuilder.BuildClassHeader">
<summary>实体类头部</summary>
</member>
<member name="M:XCode.Code.EntityBuilder.GetClassName">
<summary>获取类名</summary>
<returns></returns>
</member>
<member name="M:XCode.Code.EntityBuilder.GetBaseClass">
<summary>获取基类</summary>
<returns></returns>
</member>
<member name="M:XCode.Code.EntityBuilder.Save(System.String,System.Boolean)">
<summary>保存</summary>
<param name="ext"></param>
<param name="overwrite"></param>
</member>
<member name="M:XCode.Code.EntityBuilder.OnExecuted">
<summary>生成尾部</summary>
</member>
<member name="M:XCode.Code.EntityBuilder.AddNameSpace">
<summary>增加常用命名空间</summary>
</member>
<member name="M:XCode.Code.EntityBuilder.BuildAttribute">
<summary>实体类头部</summary>
</member>
<member name="M:XCode.Code.EntityBuilder.BuildItem(XCode.DataAccessLayer.IDataColumn)">
<summary>生成每一项</summary>
</member>
<member name="M:XCode.Code.EntityBuilder.BuildItems">
<summary>生成主体</summary>
</member>
<member name="M:XCode.Code.EntityBuilder.BuildBiz">
<summary>生成实体类业务部分</summary>
</member>
<member name="M:XCode.Code.EntityBuilder.BuildAction">
<summary>对象操作</summary>
</member>
<member name="M:XCode.Code.EntityBuilder.BuildCctor">
<summary>生成静态构造函数</summary>
</member>
<member name="M:XCode.Code.EntityBuilder.BuildValid">
<summary>数据验证</summary>
</member>
<member name="M:XCode.Code.EntityBuilder.BuildInitData">
<summary>初始化数据</summary>
</member>
<member name="M:XCode.Code.EntityBuilder.BuildOverride">
<summary>重写添删改</summary>
</member>
<member name="M:XCode.Code.EntityBuilder.BuildExtendProperty">
<summary>扩展属性</summary>
</member>
<member name="M:XCode.Code.EntityBuilder.BuildExtendSearch">
<summary>扩展查询</summary>
</member>
<member name="M:XCode.Code.EntityBuilder.BuildSearch">
<summary>高级查询</summary>
</member>
<member name="M:XCode.Code.EntityBuilder.BuildBusiness">
<summary>业务操作</summary>
</member>
<member name="T:XCode.Code.EntityAssembly">
<summary>实体程序集</summary>
<example>
外部修改实体类生成行为的例子:
<code>
var dal = DAL.Create("Common");
var ea = dal.Assembly;
ea.OnClassCreating += (s, e) =>
{
if (e.Class.Name == "Log") e.Class.BaseType = "Test.TestEntity<Log>";
};
var eop = dal.CreateOperate("Log");
var type = eop.Default.GetType();
Console.WriteLine(type);
type = type.BaseType;
Console.WriteLine(type);
type = type.BaseType;
Console.WriteLine(type);
</code>
</example>
</member>
<member name="P:XCode.Code.EntityAssembly.Name">
<summary>名称</summary>
</member>
<member name="P:XCode.Code.EntityAssembly.ConnName">
<summary>连接名</summary>
</member>
<member name="P:XCode.Code.EntityAssembly.Tables">
<summary>表集合</summary>
</member>
<member name="P:XCode.Code.EntityAssembly.Assembly">
<summary>程序集</summary>
</member>
<member name="P:XCode.Code.EntityAssembly.TypeMaps">
<summary>类型映射。数据表映射到哪个类上</summary>
</member>
<member name="M:XCode.Code.EntityAssembly.CreateWithCache(System.String,System.Collections.Generic.List{XCode.DataAccessLayer.IDataTable})">
<summary>为数据模型创建实体程序集,带缓存,依赖于表和字段名称,不依赖名称以外的信息。</summary>
<param name="name">名称</param>
<param name="tables"></param>
<returns></returns>
</member>
<member name="M:XCode.Code.EntityAssembly.Create(XCode.DataAccessLayer.IDataTable)">
<summary>在该程序集中创建一个实体类</summary>
<param name="table"></param>
<returns></returns>
</member>
<member name="M:XCode.Code.EntityAssembly.CreateAll">
<summary>创建所有表的实体类</summary>
</member>
<member name="M:XCode.Code.EntityAssembly.GetType(System.String)">
<summary>获取类型</summary>
<param name="name">名称</param>
<returns></returns>
</member>
<member name="M:XCode.Code.EntityAssembly.Compile(System.CodeDom.Compiler.CompilerParameters)">
<summary>编译</summary>
<param name="options"></param>
<returns></returns>
</member>
<member name="M:XCode.Code.EntityAssembly.Compile">
<summary>编译并返回程序集</summary>
<returns></returns>
</member>
<member name="P:XCode.Code.EntityAssembly.Debug">
<summary>是否启用动态代码调试,把动态生成的实体类代码和程序集输出到临时目录,默认不启用</summary>
</member>
<member name="M:XCode.Code.EntityAssembly.ToString">
<summary>已重载。</summary>
<returns></returns>
</member>
<member name="T:XCode.Common.DataSimulation`1">
<summary>数据模拟</summary>
<typeparam name="T"></typeparam>
</member>
<member name="M:XCode.Common.DataSimulation`1.#ctor">
<summary>实例化</summary>
</member>
<member name="T:XCode.Common.DataSimulation">
<summary>数据模拟</summary>
</member>
<member name="P:XCode.Common.DataSimulation.Factory">
<summary>实体工厂</summary>
</member>
<member name="P:XCode.Common.DataSimulation.BatchSize">
<summary>事务提交的批大小</summary>
</member>
<member name="P:XCode.Common.DataSimulation.Threads">
<summary>并发线程数</summary>
</member>
<member name="P:XCode.Common.DataSimulation.UseSql">
<summary>直接执行SQL</summary>
</member>
<member name="P:XCode.Common.DataSimulation.Score">
<summary>分数</summary>
</member>
<member name="M:XCode.Common.DataSimulation.#ctor">
<summary>实例化</summary>
</member>
<member name="M:XCode.Common.DataSimulation.Run(System.Int32)">
<summary>开始执行</summary>
<param name="count"></param>
</member>
<member name="P:XCode.Common.DataSimulation.Log">
<summary>日志</summary>
</member>
<member name="M:XCode.Common.DataSimulation.WriteLog(System.String,System.Object[])">
<summary>写日志</summary>
<param name="format"></param>
<param name="args"></param>
</member>
<member name="T:XCode.Common.Helper">
<summary>助手类</summary>
</member>
<member name="M:XCode.Common.Helper.IsNullKey(System.Object,System.Type)">
<summary>指定键是否为空。一般业务系统设计不允许主键为空,包括自增的0和字符串的空</summary>
<param name="key">键值</param>
<param name="type">类型</param>
<returns></returns>
</member>
<member name="M:XCode.Common.Helper.IsEntityNullKey(XCode.IEntity)">
<summary>是否空主键的实体</summary>
<param name="entity"></param>
<returns></returns>
</member>
<member name="T:XCode.FieldExtension">
<summary>字段扩展</summary>
</member>
<member name="M:XCode.FieldExtension.Between(XCode.Configuration.FieldItem,System.DateTime,System.DateTime)">
<summary>时间专用区间函数</summary>
<param name="fi"></param>
<param name="start">起始时间,大于等于</param>
<param name="end">结束时间,小于。如果是日期,则加一天</param>
<returns></returns>
</member>
<member name="M:XCode.FieldExtension.Today(XCode.Configuration.FieldItem)">
<summary>当天范围</summary>
<param name="field">字段</param>
<returns></returns>
</member>
<member name="M:XCode.FieldExtension.Yesterday(XCode.Configuration.FieldItem)">
<summary>昨天范围</summary>
<param name="field">字段</param>
<returns></returns>
</member>
<member name="M:XCode.FieldExtension.Tomorrow(XCode.Configuration.FieldItem)">
<summary>明天范围</summary>
<param name="field">字段</param>
<returns></returns>
</member>
<member name="M:XCode.FieldExtension.LastDays(XCode.Configuration.FieldItem,System.Int32)">
<summary>过去天数范围</summary>
<param name="field">字段</param>
<param name="days"></param>
<returns></returns>
</member>
<member name="M:XCode.FieldExtension.NextDays(XCode.Configuration.FieldItem,System.Int32)">
<summary>未来天数范围</summary>
<param name="field">字段</param>
<param name="days"></param>
<returns></returns>
</member>
<member name="M:XCode.FieldExtension.ThisWeek(XCode.Configuration.FieldItem)">
<summary>本周范围</summary>
<param name="field">字段</param>
<returns></returns>
</member>
<member name="M:XCode.FieldExtension.LastWeek(XCode.Configuration.FieldItem)">
<summary>上周范围</summary>
<param name="field">字段</param>
<returns></returns>
</member>
<member name="M:XCode.FieldExtension.NextWeek(XCode.Configuration.FieldItem)">
<summary>下周范围</summary>
<param name="field">字段</param>
<returns></returns>
</member>
<member name="M:XCode.FieldExtension.ThisMonth(XCode.Configuration.FieldItem)">
<summary>本月范围</summary>
<param name="field">字段</param>
<returns></returns>
</member>
<member name="M:XCode.FieldExtension.LastMonth(XCode.Configuration.FieldItem)">
<summary>上月范围</summary>
<param name="field">字段</param>
<returns></returns>
</member>
<member name="M:XCode.FieldExtension.NextMonth(XCode.Configuration.FieldItem)">
<summary>下月范围</summary>
<param name="field">字段</param>
<returns></returns>
</member>
<member name="M:XCode.FieldExtension.ThisQuarter(XCode.Configuration.FieldItem)">
<summary>本季度范围</summary>
<param name="field">字段</param>
<returns></returns>
</member>
<member name="M:XCode.FieldExtension.LastQuarter(XCode.Configuration.FieldItem)">
<summary>上季度范围</summary>
<param name="field">字段</param>
<returns></returns>
</member>
<member name="M:XCode.FieldExtension.NextQuarter(XCode.Configuration.FieldItem)">
<summary>下季度范围</summary>
<param name="field">字段</param>
<returns></returns>
</member>
<member name="M:XCode.FieldExtension.ContainsAll(XCode.Configuration.FieldItem,System.String)">
<summary>包含所有关键字</summary>
<param name="field"></param>
<param name="keys"></param>
<returns></returns>
</member>
<member name="M:XCode.FieldExtension.ContainsAny(XCode.Configuration.FieldItem,System.String)">
<summary>包含任意关键字</summary>
<param name="field"></param>
<param name="keys"></param>
<returns></returns>
</member>
<member name="M:XCode.FieldExtension.Asc(XCode.Configuration.FieldItem)">
<summary>升序</summary>
<param name="field">字段</param>
<returns></returns>
</member>
<member name="M:XCode.FieldExtension.Desc(XCode.Configuration.FieldItem)">
<summary>降序</summary>
<param name="field">字段</param>
<remarks>感谢 树懒(303409914)发现这里的错误</remarks>
<returns></returns>
</member>
<member name="M:XCode.FieldExtension.Sort(XCode.Configuration.FieldItem,System.Boolean)">
<summary>通过参数置顶升序降序</summary>
<param name="field">字段</param>
<param name="isdesc">是否降序</param>
<returns></returns>
</member>
<member name="M:XCode.FieldExtension.GroupBy(XCode.Configuration.FieldItem)">
<summary>分组。有条件的分组请使用WhereExpression.GroupBy</summary>
<returns></returns>
</member>
<member name="M:XCode.FieldExtension.GroupBy(XCode.WhereExpression,XCode.Configuration.FieldItem[])">
<summary>按照指定若干个字段分组。没有条件时使用分组请用FieldItem的GroupBy</summary>
<param name="where"></param>
<param name="fields"></param>
<returns>返回条件语句加上分组语句</returns>
</member>
<member name="M:XCode.FieldExtension.Aggregate(XCode.Configuration.FieldItem,System.String,System.String)">
<summary>聚合</summary>
<param name="field">字段</param>
<param name="action"></param>
<param name="newName"></param>
<returns></returns>
</member>
<member name="M:XCode.FieldExtension.As(XCode.Configuration.FieldItem,System.String)">
<summary>作为新的列</summary>
<param name="field"></param>
<param name="newName"></param>
<returns></returns>
</member>
<member name="M:XCode.FieldExtension.Count(XCode.Configuration.FieldItem,System.String)">
<summary>数量</summary>
<param name="field">字段</param>
<param name="newName">聚合后as的新名称,默认空,表示跟前面字段名一致</param>
<returns></returns>
</member>
<member name="M:XCode.FieldExtension.Sum(XCode.Configuration.FieldItem,System.String)">
<summary>求和</summary>
<param name="field">字段</param>
<param name="newName">聚合后as的新名称,默认空,表示跟前面字段名一致</param>
<returns></returns>
</member>
<member name="M:XCode.FieldExtension.Min(XCode.Configuration.FieldItem,System.String)">
<summary>最小值</summary>
<param name="field">字段</param>
<param name="newName">聚合后as的新名称,默认空,表示跟前面字段名一致</param>
<returns></returns>
</member>
<member name="M:XCode.FieldExtension.Max(XCode.Configuration.FieldItem,System.String)">
<summary>最大值</summary>
<param name="field">字段</param>
<param name="newName">聚合后as的新名称,默认空,表示跟前面字段名一致</param>
<returns></returns>
</member>
<member name="T:XCode.DataAccessLayer.ConnectionPool">
<summary>连接池</summary>
<remarks>
默认设置:
1,最小连接为CPU个数,最小2个最大8个
2,最大连接1000
3,空闲时间10s
4,完全空闲时间60s
</remarks>
</member>
<member name="P:XCode.DataAccessLayer.ConnectionPool.Factory">
<summary>工厂</summary>
</member>
<member name="P:XCode.DataAccessLayer.ConnectionPool.ConnectionString">
<summary>连接字符串</summary>
</member>
<member name="M:XCode.DataAccessLayer.ConnectionPool.#ctor">
<summary>实例化一个连接池</summary>
</member>
<member name="M:XCode.DataAccessLayer.ConnectionPool.OnCreate">
<summary>创建时连接数据库</summary>
<returns></returns>
</member>
<member name="M:XCode.DataAccessLayer.ConnectionPool.Get">
<summary>申请时检查是否打开</summary>
</member>
<member name="M:XCode.DataAccessLayer.ConnectionPool.Put(System.Data.Common.DbConnection)">
<summary>释放时,返回是否有效。无效对象将会被抛弃</summary>
<param name="value"></param>
</member>
<member name="T:XCode.DataAccessLayer.ITransaction">
<summary>事务对象</summary>
</member>
<member name="P:XCode.DataAccessLayer.ITransaction.Level">
<summary>事务隔离级别</summary>
</member>
<member name="P:XCode.DataAccessLayer.ITransaction.Count">
<summary>事务计数。当且仅当事务计数等于1时,才提交或回滚。</summary>
</member>
<member name="P:XCode.DataAccessLayer.ITransaction.Executes">
<summary>执行次数。其决定是否更新缓存</summary>
</member>
<member name="P:XCode.DataAccessLayer.ITransaction.Tran">
<summary>数据库事务</summary>
</member>
<member name="P:XCode.DataAccessLayer.ITransaction.Attachs">
<summary>事务依赖对象</summary>
</member>
<member name="E:XCode.DataAccessLayer.ITransaction.Completed">
<summary>事务完成事件</summary>
</member>
<member name="M:XCode.DataAccessLayer.ITransaction.Check(System.Data.Common.DbCommand,System.Boolean)">
<summary>获取事务</summary>
<param name="cmd">命令</param>
<param name="execute">是否执行增删改</param>
<returns></returns>
</member>
<member name="M:XCode.DataAccessLayer.ITransaction.Begin">
<summary>增加事务计数</summary>
<returns></returns>
</member>
<member name="M:XCode.DataAccessLayer.ITransaction.Commit">
<summary>提交事务</summary>
<returns></returns>
</member>
<member name="M:XCode.DataAccessLayer.ITransaction.Rollback">
<summary>回滚事务</summary>
<returns></returns>
</member>
<member name="T:XCode.DataAccessLayer.TransactionEventArgs">
<summary>事务完成事件参数</summary>
</member>
<member name="P:XCode.DataAccessLayer.TransactionEventArgs.Success">
<summary>事务是否成功</summary>
</member>
<member name="P:XCode.DataAccessLayer.TransactionEventArgs.Executes">
<summary>执行次数。其决定是否更新缓存</summary>
</member>
<member name="P:XCode.DataAccessLayer.Transaction.Executes">
<summary>执行次数。其决定是否更新缓存</summary>
</member>
<member name="P:XCode.DataAccessLayer.Transaction.Attachs">
<summary>事务依赖对象</summary>
</member>
<member name="P:XCode.DataAccessLayer.Transaction.ID">
<summary>事务唯一编号</summary>
</member>
<member name="P:XCode.DataAccessLayer.Transaction.Conn">
<summary>连接对象</summary>
</member>
<member name="P:XCode.DataAccessLayer.Transaction.Tran">
<summary>数据库事务。首次使用打开事务</summary>
</member>
<member name="M:XCode.DataAccessLayer.Transaction.Check(System.Data.Common.DbCommand,System.Boolean)">
<summary>获取事务</summary>
<param name="cmd">命令</param>
<param name="execute">是否执行增删改</param>
<returns></returns>
</member>
<member name="P:XCode.DataAccessLayer.Transaction.Log">
<summary>日志</summary>
</member>
<member name="P:XCode.DataAccessLayer.Access.Type">
<summary>返回数据库类型。外部DAL数据库类请使用Other</summary>
</member>
<member name="P:XCode.DataAccessLayer.Access.Factory">
<summary>工厂</summary>
</member>
<member name="M:XCode.DataAccessLayer.Access.OnCreateSession">
<summary>创建数据库会话</summary>
<returns></returns>
</member>
<member name="M:XCode.DataAccessLayer.Access.OnCreateMetaData">
<summary>创建元数据对象</summary>
<returns></returns>
</member>
<member name="P:XCode.DataAccessLayer.Access.LongTextLength">
<summary>长文本长度</summary>
</member>
<member name="M:XCode.DataAccessLayer.Access.FormatDateTime(System.DateTime)">
<summary>格式化时间为SQL字符串</summary>
<param name="dateTime">时间值</param>
<returns></returns>
</member>
<member name="M:XCode.DataAccessLayer.Access.FormatKeyWord(System.String)">
<summary>格式化关键字</summary>
<param name="keyWord">关键字</param>
<returns></returns>
</member>
<member name="M:XCode.DataAccessLayer.Access.FormatValue(XCode.DataAccessLayer.IDataColumn,System.Object)">
<summary>格式化数据为SQL数据</summary>
<param name="field">字段</param>
<param name="value">数值</param>
<returns></returns>
</member>
<member name="M:XCode.DataAccessLayer.Access.CheckSupport">
<summary>是否支持</summary>
</member>
<member name="T:XCode.DataAccessLayer.AccessSession">
<summary>Access数据库</summary>
</member>
<member name="M:XCode.DataAccessLayer.AccessSession.InsertAndGetIdentity(System.String,System.Data.CommandType,System.Data.IDataParameter[])">
<summary>执行插入语句并返回新增行的自动编号</summary>
<param name="sql">SQL语句</param>
<param name="type">命令类型,默认SQL文本</param>
<param name="ps">命令参数</param>
<returns>新增行的自动编号</returns>
</member>
<member name="T:XCode.DataAccessLayer.AccessMetaData">
<summary>Access元数据</summary>
</member>
<member name="M:XCode.DataAccessLayer.AccessMetaData.GetIndexes(XCode.DataAccessLayer.IDataTable,System.Data.DataTable,System.Data.DataTable)">
<summary>获取索引</summary>
<param name="table"></param>
<param name="indexes">索引</param>
<param name="indexColumns">索引列</param>
<returns></returns>
</member>
<member name="F:XCode.DataAccessLayer.AccessMetaData._DataTypes">
<summary>数据类型映射</summary>
</member>
<member name="T:XCode.DataAccessLayer.Network">
<summary>网络数据库</summary>
</member>
<member name="P:XCode.DataAccessLayer.Network.Type">
<summary>返回数据库类型。</summary>
</member>
<member name="P:XCode.DataAccessLayer.Network.Server">
<summary>服务端数据库对象,该对象不可以使用与会话相关的功能</summary>
</member>
<member name="P:XCode.DataAccessLayer.Network.RawType">
<summary>原始数据库类型。</summary>
</member>
<member name="P:XCode.DataAccessLayer.Network.Factory">
<summary>工厂</summary>
</member>
<member name="M:XCode.DataAccessLayer.Network.OnCreateSession">
<summary>创建数据库会话</summary>
<returns></returns>
</member>
<member name="M:XCode.DataAccessLayer.Network.OnCreateMetaData">
<summary>创建元数据对象</summary>
<returns></returns>
</member>
<member name="M:XCode.DataAccessLayer.Network.PageSplit(System.String,System.Int64,System.Int64,System.String)">
<summary>构造分页SQL</summary>
<param name="sql">SQL语句</param>
<param name="startRowIndex">开始行,0表示第一行</param>
<param name="maximumRows">最大返回行数,0表示所有行</param>
<param name="keyColumn">唯一键。用于not in分页</param>
<returns>分页SQL</returns>
</member>
<member name="M:XCode.DataAccessLayer.Network.PageSplit(XCode.DataAccessLayer.SelectBuilder,System.Int64,System.Int64)">
<summary>构造分页SQL</summary>
<param name="builder">查询生成器</param>
<param name="startRowIndex">开始行,0表示第一行</param>
<param name="maximumRows">最大返回行数,0表示所有行</param>
<returns>分页SQL</returns>
</member>
<member name="P:XCode.DataAccessLayer.Network.LongTextLength">
<summary>长文本长度</summary>
</member>
<member name="M:XCode.DataAccessLayer.Network.FormatDateTime(System.DateTime)">
<summary>格式化时间为SQL字符串</summary>
<param name="dateTime">时间值</param>
<returns></returns>
</member>
<member name="M:XCode.DataAccessLayer.Network.FormatName(System.String)">
<summary>格式化名称,如果不是关键字,则原样返回</summary>
<param name="name">名称</param>
<returns></returns>
</member>
<member name="M:XCode.DataAccessLayer.Network.FormatValue(XCode.DataAccessLayer.IDataColumn,System.Object)">
<summary>格式化数据为SQL数据</summary>
<param name="field">字段</param>
<param name="value">数值</param>
<returns></returns>
</member>
<member name="M:XCode.DataAccessLayer.Network.FormatParameterName(System.String)">
<summary>格式化参数名</summary>
<param name="name">名称</param>
<returns></returns>
</member>
<member name="M:XCode.DataAccessLayer.Network.StringConcat(System.String,System.String)">
<summary>字符串相加</summary>
<param name="left"></param>
<param name="right"></param>
<returns></returns>
</member>
<member name="M:XCode.DataAccessLayer.Network.CreateParameter(System.String,System.Object,XCode.DataAccessLayer.IDataColumn)">
<summary>创建参数</summary>
<param name="name">名称</param>
<param name="value">值</param>
<param name="field">字段</param>
<returns></returns>
</member>
<member name="M:XCode.DataAccessLayer.Network.CreateParameters(System.Collections.Generic.IDictionary{System.String,System.Object})">
<summary>创建参数数组</summary>
<param name="ps"></param>
<returns></returns>
</member>
<member name="T:XCode.DataAccessLayer.NetworkSession">
<summary>网络数据库会话</summary>
</member>
<member name="M:XCode.DataAccessLayer.NetworkSession.Query(System.String,System.Data.IDataParameter[])">
<summary>执行SQL查询,返回记录集</summary>
<param name="sql">SQL语句</param>
<param name="ps">命令参数</param>
<returns></returns>
</member>
<member name="M:XCode.DataAccessLayer.NetworkSession.QueryCount(XCode.DataAccessLayer.SelectBuilder)">
<summary>执行SQL查询,返回总记录数</summary>
<param name="builder">查询生成器</param>
<returns>总记录数</returns>
</member>
<member name="M:XCode.DataAccessLayer.NetworkSession.QueryCountFast(System.String)">
<summary>快速查询单表记录数,稍有偏差</summary>
<param name="tableName"></param>
<returns></returns>
</member>
<member name="M:XCode.DataAccessLayer.NetworkSession.Execute(System.String,System.Data.CommandType,System.Data.IDataParameter[])">
<summary>执行SQL语句,返回受影响的行数</summary>
<param name="sql">SQL语句</param>
<param name="type">命令类型,默认SQL文本</param>
<param name="ps">命令参数</param>
<returns></returns>
</member>
<member name="M:XCode.DataAccessLayer.NetworkSession.InsertAndGetIdentity(System.String,System.Data.CommandType,System.Data.IDataParameter[])">
<summary>执行插入语句并返回新增行的自动编号</summary>
<param name="sql">SQL语句</param>
<param name="type">命令类型,默认SQL文本</param>
<param name="ps">命令参数</param>
<returns>新增行的自动编号</returns>
</member>
<member name="M:XCode.DataAccessLayer.NetworkSession.GetSchema(System.String,System.String[])">
<summary>返回数据源的架构信息</summary>
<param name="collectionName">指定要返回的架构的名称。</param>
<param name="restrictionValues">为请求的架构指定一组限制值。</param>
<returns></returns>
</member>
<member name="T:XCode.DataAccessLayer.NetworkMetaData">
<summary>网络数据库元数据</summary>
</member>
<member name="T:XCode.DataAccessLayer.SqlCe">
<summary>SqlCe数据库。由 @Goon(12600112) 测试并完善正向反向工程</summary>
</member>
<member name="P:XCode.DataAccessLayer.SqlCe.Type">
<summary>返回数据库类型。外部DAL数据库类请使用Other</summary>
</member>
<member name="P:XCode.DataAccessLayer.SqlCe.Factory">
<summary>工厂</summary>
</member>
<member name="P:XCode.DataAccessLayer.SqlCe.SqlCeProviderVersion">
<summary>SqlCe提供者版本</summary>
</member>
<member name="P:XCode.DataAccessLayer.SqlCe.SqlCeVer">
<summary>SqlCe版本,默认4.0</summary>
</member>
<member name="M:XCode.DataAccessLayer.SqlCe.OnCreateSession">
<summary>创建数据库会话</summary>
<returns></returns>
</member>
<member name="M:XCode.DataAccessLayer.SqlCe.OnCreateMetaData">
<summary>创建元数据对象</summary>
<returns></returns>
</member>
<member name="M:XCode.DataAccessLayer.SqlCe.FormatKeyWord(System.String)">
<summary>格式化关键字</summary>
<param name="keyWord">关键字</param>
<returns></returns>
</member>
<member name="T:XCode.DataAccessLayer.SqlCeSession">
<summary>SqlCe会话</summary>
</member>
<member name="M:XCode.DataAccessLayer.SqlCeSession.InsertAndGetIdentity(System.String,System.Data.CommandType,System.Data.IDataParameter[])">
<summary>执行插入语句并返回新增行的自动编号</summary>
<param name="sql">SQL语句</param>
<param name="type">命令类型,默认SQL文本</param>
<param name="ps">命令参数</param>
<returns>新增行的自动编号</returns>
</member>
<member name="M:XCode.DataAccessLayer.SqlCeSession.GetSchema(System.String,System.String[])">
<summary>返回数据源的架构信息</summary>
<param name="collectionName">指定要返回的架构的名称。</param>
<param name="restrictionValues">为请求的架构指定一组限制值。</param>
<returns></returns>
</member>
<member name="T:XCode.DataAccessLayer.SqlCeMetaData">
<summary>SqlCe元数据</summary>
</member>
<member name="M:XCode.DataAccessLayer.SqlCeMetaData.GetIndexes(XCode.DataAccessLayer.IDataTable,System.Data.DataTable,System.Data.DataTable)">
<summary>获取索引</summary>
<param name="table"></param>
<param name="indexes">索引</param>
<param name="indexColumns">索引列</param>
<returns></returns>
</member>
<member name="F:XCode.DataAccessLayer.SqlCeMetaData._DataTypes">
<summary>数据类型映射</summary>
</member>
<member name="T:XCode.DataAccessLayer.SQLCEVersion">
<summary>SqlCe版本</summary>
</member>
<member name="F:XCode.DataAccessLayer.SQLCEVersion.SQLCE20">
<summary>Sqlce Ver2.0</summary>
</member>
<member name="F:XCode.DataAccessLayer.SQLCEVersion.SQLCE30">
<summary>Sqlce Ver3.0</summary>
</member>
<member name="F:XCode.DataAccessLayer.SQLCEVersion.SQLCE35">
<summary>Sqlce Ver3.5</summary>
</member>
<member name="F:XCode.DataAccessLayer.SQLCEVersion.SQLCE40">
<summary>Sqlce Ver4.0</summary>
</member>
<member name="T:XCode.DataAccessLayer.SqlCeHelper">
<summary>SqlCe辅助类</summary>
</member>
<member name="M:XCode.DataAccessLayer.SqlCeHelper.DetermineVersion(System.String)">
<summary>检查给定SqlCe文件的版本</summary>
<param name="fileName"></param>
<returns></returns>
</member>
<member name="M:XCode.DataAccessLayer.SqlCeHelper.IsV35Installed">
<summary>检测SqlServerCe3.5是否安装</summary>
<returns></returns>
</member>
<member name="M:XCode.DataAccessLayer.SqlCeHelper.IsV40Installed">
<summary>检测SqlServerCe4是否安装</summary>
<returns></returns>
</member>
<member name="P:XCode.DataAccessLayer.SqlCeEngine.EngineType">
<summary></summary>
</member>
<member name="P:XCode.DataAccessLayer.SqlCeEngine.Engine">
<summary>引擎</summary>
</member>
<member name="T:XCode.DataAccessLayer.IModelResolver">
<summary>模型解析器接口。解决名称大小写、去前缀、关键字等多个问题</summary>
</member>
<member name="M:XCode.DataAccessLayer.IModelResolver.GetName(System.String)">
<summary>获取别名。过滤特殊符号,过滤_之类的前缀。</summary>
<param name="name">名称</param>
<returns></returns>
</member>
<member name="M:XCode.DataAccessLayer.IModelResolver.GetName(XCode.DataAccessLayer.IDataIndex)">
<summary>根据字段名等信息计算索引的名称</summary>
<param name="di"></param>
<returns></returns>
</member>
<member name="M:XCode.DataAccessLayer.IModelResolver.GetDisplayName(System.String,System.String)">
<summary>获取显示名,如果描述不存在,则使用名称,否则使用描述前面部分,句号(中英文皆可)、换行分隔</summary>
<param name="name">名称</param>
<param name="description"></param>
<returns></returns>
</member>
<member name="M:XCode.DataAccessLayer.IModelResolver.Fix(XCode.DataAccessLayer.IDataTable)">
<summary>修正数据</summary>
<param name="table"></param>
</member>
<member name="M:XCode.DataAccessLayer.IModelResolver.Fix(XCode.DataAccessLayer.IDataColumn)">
<summary>修正数据列</summary>
<param name="column"></param>
</member>
<member name="T:XCode.DataAccessLayer.ModelResolver">
<summary>模型解析器。解决名称大小写、去前缀、关键字等多个问题</summary>
</member>
<member name="M:XCode.DataAccessLayer.ModelResolver.GetName(System.String)">
<summary>获取别名。过滤特殊符号,过滤_之类的前缀。</summary>
<param name="name">名称</param>
<returns></returns>
</member>
<member name="M:XCode.DataAccessLayer.ModelResolver.GetName(XCode.DataAccessLayer.IDataIndex)">
<summary>根据字段名等信息计算索引的名称</summary>
<param name="di"></param>
<returns></returns>
</member>
<member name="M:XCode.DataAccessLayer.ModelResolver.GetDisplayName(System.String,System.String)">
<summary>获取显示名,如果描述不存在,则使用名称,否则使用描述前面部分,句号(中英文皆可)、换行分隔</summary>
<param name="name">名称</param>
<param name="description"></param>
<returns></returns>
</member>
<member name="M:XCode.DataAccessLayer.ModelResolver.Fix(XCode.DataAccessLayer.IDataTable)">
<summary>修正数据</summary>
<param name="table"></param>
</member>
<member name="M:XCode.DataAccessLayer.ModelResolver.Fix(XCode.DataAccessLayer.IDataColumn)">
<summary>修正数据列</summary>
<param name="column"></param>
</member>
<member name="M:XCode.DataAccessLayer.ModelResolver.FixPrimaryByIndex(XCode.DataAccessLayer.IDataTable)">
<summary>从索引中修正主键</summary>
<param name="table"></param>
</member>
<member name="M:XCode.DataAccessLayer.ModelResolver.CreateUniqueIndexForIdentity(XCode.DataAccessLayer.IDataTable)">
<summary>给非主键的自增字段建立唯一索引</summary>
<param name="table"></param>
</member>
<member name="M:XCode.DataAccessLayer.ModelResolver.FixIndex(XCode.DataAccessLayer.IDataTable)">
<summary>索引应该具有跟字段一样的唯一和主键约束</summary>
<param name="table"></param>
</member>
<member name="P:XCode.DataAccessLayer.ModelResolver.Current">
<summary>当前名称解析器</summary>
</member>
<member name="T:XCode.DataAccessLayer.MSPageSplit">
<summary>MS系列数据库分页算法</summary>
</member>
<member name="M:XCode.DataAccessLayer.MSPageSplit.PageSplit(XCode.DataAccessLayer.SelectBuilder,System.Int64,System.Int64,System.Boolean,System.Func{XCode.DataAccessLayer.SelectBuilder,System.Int64})">
<summary>分页算法</summary>
<remarks>
builder里面必须含有排序,否则就要通过key指定主键,否则大部分算法不能使用,会导致逻辑数据排序不正确。
其实,一般数据都是按照聚集索引排序,而聚集索引刚好也就是主键。
所以,只要设置的Key顺序跟主键顺序一致,就没有问题。
如果,Key指定了跟主键不一致的顺序,那么查询语句一定要指定同样的排序。
</remarks>
<param name="builder"></param>
<param name="startRowIndex"></param>
<param name="maximumRows"></param>
<param name="isSql2005"></param>
<param name="queryCountCallback">查询总记录数的委托,近供DoubleTop使用</param>
<returns></returns>
</member>
<member name="M:XCode.DataAccessLayer.MSPageSplit.TopNotIn(XCode.DataAccessLayer.SelectBuilder,System.Int64,System.Int64)">
<summary>最经典的NotIn分页,通用但是效率最差。只需指定一个排序列。</summary>
<param name="builder">查询生成器</param>
<param name="startRowIndex">开始行,0表示第一行</param>
<param name="maximumRows">最大返回行数,0表示所有行</param>
<returns>分页SQL</returns>
</member>
<member name="M:XCode.DataAccessLayer.MSPageSplit.DoubleTop(XCode.DataAccessLayer.SelectBuilder,System.Int64,System.Int64,System.Func{XCode.DataAccessLayer.SelectBuilder,System.Int64})">
<summary>双Top分页,因为没有使用not in,性能比NotIn要好。语句必须有排序,不需额外指定排序列</summary>
<param name="builder"></param>
<param name="startRowIndex"></param>
<param name="maximumRows"></param>
<param name="queryCountCallback">查询总记录数的委托,近供DoubleTop使用</param>
<returns></returns>
</member>
<member name="M:XCode.DataAccessLayer.MSPageSplit.MaxMin(XCode.DataAccessLayer.SelectBuilder,System.Int64,System.Int64)">
<summary>按唯一数字最大最小分页,性能很好。必须指定一个数字型排序列。</summary>
<param name="builder">查询生成器</param>
<param name="startRowIndex">开始行,0表示第一行</param>
<param name="maximumRows">最大返回行数,0表示所有行</param>
<returns>分页SQL</returns>
</member>
<member name="M:XCode.DataAccessLayer.MSPageSplit.RowNumber(XCode.DataAccessLayer.SelectBuilder,System.Int64,System.Int64)">
<summary>RowNumber分页算法</summary>
<param name="builder">查询生成器</param>
<param name="startRowIndex">开始行,0表示第一行</param>
<param name="maximumRows">最大返回行数,0表示所有行</param>
<returns></returns>
</member>
<member name="T:XCode.DataAccessLayer.DatabaseType">
<summary>数据库类型</summary>
</member>
<member name="F:XCode.DataAccessLayer.DatabaseType.None">
<summary>无效值</summary>
</member>
<member name="F:XCode.DataAccessLayer.DatabaseType.Access">
<summary>MS的Access文件数据库</summary>
</member>
<member name="F:XCode.DataAccessLayer.DatabaseType.SqlServer">
<summary>MS的SqlServer数据库</summary>
</member>
<member name="F:XCode.DataAccessLayer.DatabaseType.Oracle">
<summary>Oracle数据库</summary>
</member>
<member name="F:XCode.DataAccessLayer.DatabaseType.MySql">
<summary>MySql数据库</summary>
</member>
<member name="F:XCode.DataAccessLayer.DatabaseType.SqlCe">
<summary>SqlCe数据库</summary>
</member>
<member name="F:XCode.DataAccessLayer.DatabaseType.SQLite">
<summary>SQLite数据库</summary>
</member>
<member name="F:XCode.DataAccessLayer.DatabaseType.PostgreSQL">
<summary>SqlCe数据库</summary>
</member>
<member name="F:XCode.DataAccessLayer.DatabaseType.Network">
<summary>网络虚拟数据库</summary>
</member>
<member name="T:XCode.DataAccessLayer.FileDbBase">
<summary>文件型数据库</summary>
</member>
<member name="T:XCode.DataAccessLayer.FileDbSession">
<summary>文件型数据库会话</summary>
</member>
<member name="P:XCode.DataAccessLayer.FileDbSession.FileName">
<summary>文件</summary>
</member>
<member name="M:XCode.DataAccessLayer.FileDbSession.Open">
<summary>已重载。打开数据库连接前创建数据库</summary>
</member>
<member name="M:XCode.DataAccessLayer.FileDbSession.Truncate(System.String)">
<summary>清空数据表,标识归零</summary>
<param name="tableName"></param>
<returns></returns>
</member>
<member name="T:XCode.DataAccessLayer.FileDbMetaData">
<summary>文件型数据库元数据</summary>
</member>
<member name="P:XCode.DataAccessLayer.FileDbMetaData.FileName">
<summary>文件</summary>
</member>
<member name="M:XCode.DataAccessLayer.FileDbMetaData.SetSchema(XCode.DataAccessLayer.DDLSchema,System.Object[])">
<summary>设置数据定义模式</summary>
<param name="schema"></param>
<param name="values"></param>
<returns></returns>
</member>
<member name="M:XCode.DataAccessLayer.FileDbMetaData.CreateDatabase">
<summary>创建数据库</summary>
</member>
<member name="T:XCode.DataAccessLayer.RemoteDb">
<summary>远程数据库。一般是分为客户端服务器的中大型数据库,该类数据库支持完整的SQL92</summary>
</member>
<member name="P:XCode.DataAccessLayer.RemoteDb.SystemDatabaseName">
<summary>系统数据库名</summary>
</member>
<member name="P:XCode.DataAccessLayer.RemoteDb.ServerVersion">
<summary>数据库服务器版本</summary>
</member>
<member name="P:XCode.DataAccessLayer.RemoteDb.User">
<summary>用户名UserID</summary>
</member>
<member name="T:XCode.DataAccessLayer.RemoteDbSession">
<summary>远程数据库会话</summary>
</member>
<member name="P:XCode.DataAccessLayer.RemoteDbSession.SystemDatabaseName">
<summary>系统数据库名</summary>
</member>
<member name="T:XCode.DataAccessLayer.RemoteDbMetaData">
<summary>远程数据库元数据</summary>
</member>
<member name="T:XCode.DataAccessLayer.DAL">
<summary>数据访问层</summary>
<remarks>
主要用于选择不同的数据库,不同的数据库的操作有所差别。
每一个数据库链接字符串,对应唯一的一个DAL实例。
数据库链接字符串可以写在配置文件中,然后在Create时指定名字;
也可以直接把链接字符串作为AddConnStr的参数传入。
</remarks>
</member>
<member name="P:XCode.DataAccessLayer.DAL.QueryTimes">
<summary>查询次数</summary>
</member>
<member name="P:XCode.DataAccessLayer.DAL.ExecuteTimes">
<summary>执行次数</summary>
</member>
<member name="M:XCode.DataAccessLayer.DAL.PageSplit(XCode.DataAccessLayer.SelectBuilder,System.Int64,System.Int64)">
<summary>根据条件把普通查询SQL格式化为分页SQL。</summary>
<param name="builder">查询生成器</param>
<param name="startRowIndex">开始行,0表示第一行</param>
<param name="maximumRows">最大返回行数,0表示所有行</param>
<returns>分页SQL</returns>
</member>
<member name="M:XCode.DataAccessLayer.DAL.Select(System.String)">
<summary>执行SQL查询,返回记录集</summary>
<param name="sql">SQL语句</param>
<returns></returns>
</member>
<member name="M:XCode.DataAccessLayer.DAL.Select(XCode.DataAccessLayer.SelectBuilder,System.Int64,System.Int64)">
<summary>执行SQL查询,返回记录集</summary>
<param name="builder">SQL语句</param>
<param name="startRowIndex">开始行,0表示第一行</param>
<param name="maximumRows">最大返回行数,0表示所有行</param>
<returns></returns>
</member>
<member name="M:XCode.DataAccessLayer.DAL.Query(XCode.DataAccessLayer.SelectBuilder,System.Int64,System.Int64)">
<summary>执行SQL查询,返回记录集</summary>
<param name="builder">SQL语句</param>
<param name="startRowIndex">开始行,0表示第一行</param>
<param name="maximumRows">最大返回行数,0表示所有行</param>
<returns></returns>
</member>
<member name="M:XCode.DataAccessLayer.DAL.Query(System.String,System.Collections.Generic.IDictionary{System.String,System.Object})">
<summary>执行SQL查询,返回记录集</summary>
<param name="sql">SQL语句</param>
<param name="ps">命令参数</param>
<returns></returns>
</member>
<member name="M:XCode.DataAccessLayer.DAL.SelectCount(XCode.DataAccessLayer.SelectBuilder)">
<summary>执行SQL查询,返回总记录数</summary>
<param name="sb">查询生成器</param>
<returns></returns>
</member>
<member name="M:XCode.DataAccessLayer.DAL.SelectCount(System.String,System.Data.CommandType,System.Data.IDataParameter[])">
<summary>执行SQL查询,返回总记录数</summary>
<param name="sql">SQL语句</param>
<param name="type">命令类型,默认SQL文本</param>
<param name="ps">命令参数</param>
<returns></returns>
</member>
<member name="M:XCode.DataAccessLayer.DAL.Execute(System.String)">
<summary>执行SQL语句,返回受影响的行数</summary>
<param name="sql">SQL语句</param>
<returns></returns>
</member>
<member name="M:XCode.DataAccessLayer.DAL.InsertAndGetIdentity(System.String)">
<summary>执行插入语句并返回新增行的自动编号</summary>
<param name="sql"></param>
<returns>新增行的自动编号</returns>
</member>
<member name="M:XCode.DataAccessLayer.DAL.Select(System.String,System.Data.CommandType,System.Data.IDataParameter[])">
<summary>执行SQL查询,返回记录集</summary>
<param name="sql">SQL语句</param>
<param name="type">命令类型,默认SQL文本</param>
<param name="ps">命令参数</param>
<returns></returns>
</member>
<member name="M:XCode.DataAccessLayer.DAL.Execute(System.String,System.Data.CommandType,System.Data.IDataParameter[])">
<summary>执行SQL语句,返回受影响的行数</summary>
<param name="sql">SQL语句</param>
<param name="type">命令类型,默认SQL文本</param>
<param name="ps">命令参数</param>
<returns></returns>
</member>
<member name="M:XCode.DataAccessLayer.DAL.InsertAndGetIdentity(System.String,System.Data.CommandType,System.Data.IDataParameter[])">
<summary>执行插入语句并返回新增行的自动编号</summary>
<param name="sql"></param>
<param name="type">命令类型,默认SQL文本</param>
<param name="ps">命令参数</param>
<returns>新增行的自动编号</returns>
</member>
<member name="M:XCode.DataAccessLayer.DAL.Select(System.String,System.Data.CommandType,System.Collections.Generic.IDictionary{System.String,System.Object})">
<summary>执行SQL查询,返回记录集</summary>
<param name="sql">SQL语句</param>
<param name="type">命令类型,默认SQL文本</param>
<param name="ps">命令参数</param>
<returns></returns>
</member>
<member name="M:XCode.DataAccessLayer.DAL.Execute(System.String,System.Data.CommandType,System.Collections.Generic.IDictionary{System.String,System.Object})">
<summary>执行SQL语句,返回受影响的行数</summary>
<param name="sql">SQL语句</param>
<param name="type">命令类型,默认SQL文本</param>
<param name="ps">命令参数</param>
<returns></returns>
</member>
<member name="M:XCode.DataAccessLayer.DAL.ExecuteScalar``1(System.String,System.Data.CommandType,System.Collections.Generic.IDictionary{System.String,System.Object})">
<summary>执行SQL语句,返回结果中的第一行第一列</summary>
<typeparam name="T">返回类型</typeparam>
<param name="sql">SQL语句</param>
<param name="type">命令类型,默认SQL文本</param>
<param name="ps">命令参数</param>
<returns></returns>
</member>
<member name="M:XCode.DataAccessLayer.DAL.BeginTransaction(System.Data.IsolationLevel)">
<summary>开始事务</summary>
<remarks>
Read Uncommitted: 允许读取脏数据,一个事务能看到另一个事务还没有提交的数据。(不会阻止其它操作)
Read Committed: 确保事务读取的数据都必须是已经提交的数据。它限制了读取中间的,没有提交的,脏的数据。
但是它不能确保当事务重新去读取的时候,读的数据跟上次读的数据是一样的,也就是说当事务第一次读取完数据后,
该数据是可能被其他事务修改的,当它再去读取的时候,数据可能是不一样的。(数据隐藏,不阻止)
Repeatable Read: 是一个更高级别的隔离级别,如果事务再去读取同样的数据,先前的数据是没有被修改过的。(阻止其它修改)
Serializable: 它做出了最有力的保证,除了每次读取的数据是一样的,它还确保每次读取没有新的数据。(阻止其它添删改)
</remarks>
<param name="level">事务隔离等级</param>
<returns>剩下的事务计数</returns>
</member>
<member name="M:XCode.DataAccessLayer.DAL.Commit">
<summary>提交事务</summary>
<returns>剩下的事务计数</returns>
</member>
<member name="M:XCode.DataAccessLayer.DAL.Rollback">
<summary>回滚事务,忽略异常</summary>
<returns>剩下的事务计数</returns>
</member>
<member name="P:XCode.DataAccessLayer.DAL.Debug">
<summary>是否调试</summary>
</member>
<member name="M:XCode.DataAccessLayer.DAL.WriteLog(System.String,System.Object[])">
<summary>输出日志</summary>
<param name="format"></param>
<param name="args"></param>
</member>
<member name="M:XCode.DataAccessLayer.DAL.WriteDebugLog(System.String,System.Object[])">
<summary>输出日志</summary>
<param name="format"></param>
<param name="args"></param>
</member>
<member name="M:XCode.DataAccessLayer.DAL.ToString">
<summary>已重载。</summary>
<returns></returns>
</member>
<member name="M:XCode.DataAccessLayer.DAL.CreateTable">
<summary>建立数据表对象</summary>
<returns></returns>
</member>
<member name="M:XCode.DataAccessLayer.DAL.#ctor(System.String)">
<summary>构造函数</summary>
<param name="connName">配置名</param>
</member>
<member name="M:XCode.DataAccessLayer.DAL.Create(System.String)">
<summary>创建一个数据访问层对象。</summary>
<param name="connName">配置名</param>
<returns>对应于指定链接的全局唯一的数据访问层对象</returns>
</member>
<member name="P:XCode.DataAccessLayer.DAL.ConnStrs">
<summary>链接字符串集合</summary>
<remarks>
如果需要修改一个DAL的连接字符串,不应该修改这里,而是修改DAL实例的<see cref="P:XCode.DataAccessLayer.DAL.ConnStr"/>属性
</remarks>
</member>
<member name="M:XCode.DataAccessLayer.DAL.AddConnStr(System.String,System.String,System.Type,System.String)">
<summary>添加连接字符串</summary>
<param name="connName">连接名</param>
<param name="connStr">连接字符串</param>
<param name="type">实现了IDatabase接口的数据库类型</param>
<param name="provider">数据库提供者,如果没有指定数据库类型,则有提供者判断使用哪一种内置类型</param>
</member>
<member name="E:XCode.DataAccessLayer.DAL.OnResolve">
<summary>找不到连接名时调用。支持用户自定义默认连接</summary>
</member>
<member name="M:XCode.DataAccessLayer.DAL.RegisterDefault(System.String,System.String,System.String)">
<summary>注册默认连接字符串。无法从配置文件获取时使用</summary>
<param name="connName">连接名</param>
<param name="connStr">连接字符串</param>
<param name="provider">数据库提供者</param>
</member>
<member name="P:XCode.DataAccessLayer.DAL.ConnName">
<summary>连接名</summary>
</member>
<member name="P:XCode.DataAccessLayer.DAL.ProviderType">
<summary>实现了IDatabase接口的数据库类型</summary>
</member>
<member name="P:XCode.DataAccessLayer.DAL.DbType">
<summary>数据库类型</summary>
</member>
<member name="P:XCode.DataAccessLayer.DAL.ConnStr">
<summary>连接字符串</summary>
<remarks>
修改连接字符串将会清空<see cref="P:XCode.DataAccessLayer.DAL.Db"/>
</remarks>
</member>
<member name="P:XCode.DataAccessLayer.DAL.Db">
<summary>数据库。所有数据库操作在此统一管理,强烈建议不要直接使用该属性,在不同版本中IDatabase可能有较大改变</summary>
</member>
<member name="P:XCode.DataAccessLayer.DAL.Session">
<summary>数据库会话</summary>
</member>
<member name="M:XCode.DataAccessLayer.DAL.EncodeConnStr(System.String)">
<summary>连接字符串编码</summary>
<remarks>明文=>UTF8字节=>Base64</remarks>
<param name="connstr"></param>
<returns></returns>
</member>
<member name="M:XCode.DataAccessLayer.DAL.DecodeConnStr(System.String)">
<summary>连接字符串解码</summary>
<remarks>Base64=>UTF8字节=>明文</remarks>
<param name="connstr"></param>
<returns></returns>
</member>
<member name="P:XCode.DataAccessLayer.DAL.Tables">
<summary>取得所有表和视图的构架信息(异步缓存延迟1秒)。设为null可清除缓存</summary>
<remarks>
如果不存在缓存,则获取后返回;否则使用线程池线程获取,而主线程返回缓存。
</remarks>
<returns></returns>
</member>
<member name="M:XCode.DataAccessLayer.DAL.Export">
<summary>导出模型</summary>
<returns></returns>
</member>
<member name="M:XCode.DataAccessLayer.DAL.Export(System.Collections.Generic.IEnumerable{XCode.DataAccessLayer.IDataTable})">
<summary>导出模型</summary>
<param name="tables"></param>
<returns></returns>
</member>
<member name="M:XCode.DataAccessLayer.DAL.Import(System.String)">
<summary>导入模型</summary>
<param name="xml"></param>
<returns></returns>
</member>
<member name="M:XCode.DataAccessLayer.DAL.ImportFrom(System.String)">
<summary>导入模型文件</summary>
<param name="xmlFile"></param>
<returns></returns>
</member>
<member name="M:XCode.DataAccessLayer.DAL.CheckBeforeUseDatabase">
<summary>使用数据库之前检查表架构</summary>
<remarks>不阻塞,可能第一个线程正在检查表架构,别的线程已经开始使用数据库了</remarks>
</member>
<member name="M:XCode.DataAccessLayer.DAL.CheckAndAdd(System.String)">
<summary>检查是否已存在,如果不存在则添加</summary>
<param name="tableName"></param>
<returns></returns>
</member>
<member name="M:XCode.DataAccessLayer.DAL.CheckTables">
<summary>检查数据表架构,不受反向工程启用开关限制,仅检查未经过常规检查的表</summary>
</member>
<member name="M:XCode.DataAccessLayer.DAL.SetTables(XCode.DataAccessLayer.IDataTable[])">
<summary>在当前连接上检查指定数据表的架构</summary>
<param name="tables"></param>
</member>
<member name="P:XCode.DataAccessLayer.DAL.Assembly">
<summary>根据数据模型动态创建的程序集</summary>
</member>
<member name="M:XCode.DataAccessLayer.DAL.CreateOperate(System.String)">
<summary>创建实体操作接口</summary>
<remarks>因为只用来做实体操作,所以只需要一个实例即可</remarks>
<param name="tableName"></param>
<returns></returns>
</member>
<member name="P:XCode.DataAccessLayer.PostgreSQL.Type">
<summary>返回数据库类型。</summary>
</member>
<member name="P:XCode.DataAccessLayer.PostgreSQL.Factory">
<summary>工厂</summary>
</member>
<member name="M:XCode.DataAccessLayer.PostgreSQL.OnCreateSession">
<summary>创建数据库会话</summary>
<returns></returns>
</member>
<member name="M:XCode.DataAccessLayer.PostgreSQL.OnCreateMetaData">
<summary>创建元数据对象</summary>
<returns></returns>
</member>
<member name="M:XCode.DataAccessLayer.PostgreSQL.PageSplit(System.String,System.Int64,System.Int64,System.String)">
<summary>已重写。获取分页</summary>
<param name="sql">SQL语句</param>
<param name="startRowIndex">开始行,0表示第一行</param>
<param name="maximumRows">最大返回行数,0表示所有行</param>
<param name="keyColumn">主键列。用于not in分页</param>
<returns></returns>
</member>
<member name="M:XCode.DataAccessLayer.PostgreSQL.PageSplit(XCode.DataAccessLayer.SelectBuilder,System.Int64,System.Int64)">
<summary>构造分页SQL</summary>
<remarks>
两个构造分页SQL的方法,区别就在于查询生成器能够构造出来更好的分页语句,尽可能的避免子查询。
MS体系的分页精髓就在于唯一键,当唯一键带有Asc/Desc/Unkown等排序结尾时,就采用最大最小值分页,否则使用较次的TopNotIn分页。
TopNotIn分页和MaxMin分页的弊端就在于无法完美的支持GroupBy查询分页,只能查到第一页,往后分页就不行了,因为没有主键。
</remarks>
<param name="builder">查询生成器</param>
<param name="startRowIndex">开始行,0表示第一行</param>
<param name="maximumRows">最大返回行数,0表示所有行</param>
<returns>分页SQL</returns>
</member>
<member name="M:XCode.DataAccessLayer.PostgreSQL.FormatKeyWord(System.String)">
<summary>格式化关键字</summary>
<param name="keyWord">关键字</param>
<returns></returns>
</member>
<member name="M:XCode.DataAccessLayer.PostgreSQL.FormatValue(XCode.DataAccessLayer.IDataColumn,System.Object)">
<summary>格式化数据为SQL数据</summary>
<param name="field">字段</param>
<param name="value">数值</param>
<returns></returns>
</member>
<member name="P:XCode.DataAccessLayer.PostgreSQL.LongTextLength">
<summary>长文本长度</summary>
</member>
<member name="P:XCode.DataAccessLayer.PostgreSQL.SystemDatabaseName">
<summary>系统数据库名</summary>
</member>
<member name="M:XCode.DataAccessLayer.PostgreSQL.StringConcat(System.String,System.String)">
<summary>字符串相加</summary>
<param name="left"></param>
<param name="right"></param>
<returns></returns>
</member>
<member name="T:XCode.DataAccessLayer.PostgreSQLSession">
<summary>PostgreSQL数据库</summary>
</member>
<member name="M:XCode.DataAccessLayer.PostgreSQLSession.InsertAndGetIdentity(System.String,System.Data.CommandType,System.Data.IDataParameter[])">
<summary>执行插入语句并返回新增行的自动编号</summary>
<param name="sql">SQL语句</param>
<param name="type">命令类型,默认SQL文本</param>
<param name="ps">命令参数</param>
<returns>新增行的自动编号</returns>
</member>
<member name="T:XCode.DataAccessLayer.PostgreSQLMetaData">
<summary>PostgreSQL元数据</summary>
</member>
<member name="F:XCode.DataAccessLayer.PostgreSQLMetaData._DataTypes">
<summary>数据类型映射</summary>
</member>
<member name="T:XCode.DataAccessLayer.DbBase">
<summary>数据库基类</summary>
<remarks>
数据库类的职责是抽象不同数据库的共同点,理应最小化,保证原汁原味,因此不做缓存等实现。
对于每一个连接字符串配置,都有一个数据库实例,而不是每个数据库类型一个实例,因为同类型数据库不同版本行为不同。
</remarks>
</member>
<member name="M:XCode.DataAccessLayer.DbBase.OnDispose(System.Boolean)">
<summary>销毁资源时,回滚未提交事务,并关闭数据库连接</summary>
<param name="disposing"></param>
</member>
<member name="M:XCode.DataAccessLayer.DbBase.ReleaseSession">
<summary>释放所有会话</summary>
</member>
<member name="P:XCode.DataAccessLayer.DbBase.Type">
<summary>返回数据库类型。外部DAL数据库类请使用Other</summary>
</member>
<member name="P:XCode.DataAccessLayer.DbBase.Factory">
<summary>工厂</summary>
</member>
<member name="P:XCode.DataAccessLayer.DbBase.ConnName">
<summary>连接名</summary>
</member>
<member name="P:XCode.DataAccessLayer.DbBase.ConnectionString">
<summary>链接字符串</summary>
</member>
<member name="P:XCode.DataAccessLayer.DbBase.Pool">
<summary>连接池</summary>
</member>
<member name="M:XCode.DataAccessLayer.DbBase.OnSetConnectionString(XCode.DataAccessLayer.ConnectionStringBuilder)">
<summary>设置连接字符串时允许从中取值或修改,基类用于读取拥有者Owner,子类重写时应调用基类</summary>
<param name="builder"></param>
</member>
<member name="P:XCode.DataAccessLayer.DbBase.Owner">
<summary>拥有者</summary>
</member>
<member name="P:XCode.DataAccessLayer.DbBase.DatabaseName">
<summary>数据库名</summary>
</member>
<member name="P:XCode.DataAccessLayer.DbBase.ServerVersion">
<summary>数据库服务器版本</summary>
</member>
<member name="P:XCode.DataAccessLayer.DbBase.Migration">
<summary>反向工程。Off 关闭;ReadOnly 只读不执行;On 打开,新建;Full 完全,修改删除</summary>
</member>
<member name="P:XCode.DataAccessLayer.DbBase.TraceSQLTime">
<summary>跟踪SQL执行时间,大于该阀值将输出日志</summary>
</member>
<member name="P:XCode.DataAccessLayer.DbBase.Readonly">
<summary>本连接数据只读。需求不够强劲,暂不支持在连接字符串中设置</summary>
</member>
<member name="P:XCode.DataAccessLayer.DbBase.TablePrefix">
<summary>表前缀。所有在该连接上的表名都自动增加该前缀</summary>
</member>
<member name="F:XCode.DataAccessLayer.DbBase._sessions">
<summary>保证数据库在每一个线程都有唯一的一个实例</summary>
</member>
<member name="M:XCode.DataAccessLayer.DbBase.CreateSession">
<summary>创建数据库会话,数据库在每一个线程都有唯一的一个实例</summary>
<returns></returns>
</member>
<member name="M:XCode.DataAccessLayer.DbBase.OnCreateSession">
<summary>创建数据库会话</summary>
<returns></returns>
</member>
<member name="F:XCode.DataAccessLayer.DbBase._metadata">
<summary>唯一实例</summary>
</member>
<member name="M:XCode.DataAccessLayer.DbBase.CreateMetaData">
<summary>创建元数据对象,唯一实例</summary>
<returns></returns>
</member>
<member name="M:XCode.DataAccessLayer.DbBase.OnCreateMetaData">
<summary>创建元数据对象</summary>
<returns></returns>
</member>
<member name="M:XCode.DataAccessLayer.DbBase.Support(System.String)">
<summary>是否支持该提供者所描述的数据库</summary>
<param name="providerName">提供者</param>
<returns></returns>
</member>
<member name="M:XCode.DataAccessLayer.DbBase.GetProviderFactory(System.String,System.String,System.Boolean)">
<summary>获取提供者工厂</summary>
<param name="assemblyFile"></param>
<param name="className"></param>
<param name="ignoreError"></param>
<returns></returns>
</member>
<member name="M:XCode.DataAccessLayer.DbBase.PageSplit(System.String,System.Int64,System.Int64,System.String)">
<summary>构造分页SQL,优先选择max/min,然后选择not in</summary>
<remarks>
两个构造分页SQL的方法,区别就在于查询生成器能够构造出来更好的分页语句,尽可能的避免子查询。
MS体系的分页精髓就在于唯一键,当唯一键带有Asc/Desc/Unkown等排序结尾时,就采用最大最小值分页,否则使用较次的TopNotIn分页。
TopNotIn分页和MaxMin分页的弊端就在于无法完美的支持GroupBy查询分页,只能查到第一页,往后分页就不行了,因为没有主键。
</remarks>
<param name="sql">SQL语句</param>
<param name="startRowIndex">开始行,0表示第一行</param>
<param name="maximumRows">最大返回行数,0表示所有行</param>
<param name="keyColumn">唯一键。用于not in分页</param>
<returns>分页SQL</returns>
</member>
<member name="M:XCode.DataAccessLayer.DbBase.PageSplitMaxMin(System.String,System.Int64,System.Int64,System.String)">
<summary>按唯一数字最大最小分析</summary>
<param name="sql">SQL语句</param>
<param name="startRowIndex">开始行,0表示第一行</param>
<param name="maximumRows">最大返回行数,0表示所有行</param>
<param name="keyColumn">唯一键。用于not in分页</param>
<returns>分页SQL</returns>
</member>
<member name="M:XCode.DataAccessLayer.DbBase.CheckSimpleSQL(System.String)">
<summary>检查简单SQL语句,比如Select * From table</summary>
<param name="sql">待检查SQL语句</param>
<returns>如果是简单SQL语句则返回表名,否则返回子查询(sql) XCode_Temp_a</returns>
</member>
<member name="M:XCode.DataAccessLayer.DbBase.CheckOrderClause(System.String@)">
<summary>检查是否以Order子句结尾,如果是,分割sql为前后两部分</summary>
<param name="sql"></param>
<returns></returns>
</member>
<member name="M:XCode.DataAccessLayer.DbBase.PageSplit(XCode.DataAccessLayer.SelectBuilder,System.Int64,System.Int64)">
<summary>构造分页SQL</summary>
<remarks>
两个构造分页SQL的方法,区别就在于查询生成器能够构造出来更好的分页语句,尽可能的避免子查询。
MS体系的分页精髓就在于唯一键,当唯一键带有Asc/Desc/Unkown等排序结尾时,就采用最大最小值分页,否则使用较次的TopNotIn分页。
TopNotIn分页和MaxMin分页的弊端就在于无法完美的支持GroupBy查询分页,只能查到第一页,往后分页就不行了,因为没有主键。
</remarks>
<param name="builder">查询生成器</param>
<param name="startRowIndex">开始行,0表示第一行</param>
<param name="maximumRows">最大返回行数,0表示所有行</param>
<returns>分页SQL</returns>
</member>
<member name="P:XCode.DataAccessLayer.DbBase.LongTextLength">
<summary>长文本长度</summary>
</member>
<member name="P:XCode.DataAccessLayer.DbBase.ReservedWordsStr">
<summary>
保留字字符串,其实可以在首次使用时动态从Schema中加载
</summary>
</member>
<member name="P:XCode.DataAccessLayer.DbBase.ReservedWords">
<summary>
保留字
</summary>
</member>
<member name="M:XCode.DataAccessLayer.DbBase.IsReservedWord(System.String)">
<summary>是否保留字</summary>
<param name="word"></param>
<returns></returns>
</member>
<member name="M:XCode.DataAccessLayer.DbBase.FormatDateTime(System.DateTime)">
<summary>格式化时间为SQL字符串</summary>
<remarks>
优化DateTime转为全字符串,平均耗时从25.76ns降为15.07。
调用非常频繁,每分钟都有数百万次调用。
</remarks>
<param name="dateTime">时间值</param>
<returns></returns>
</member>
<member name="M:XCode.DataAccessLayer.DbBase.FormatKeyWord(System.String)">
<summary>格式化关键字</summary>
<param name="keyWord">表名</param>
<returns></returns>
</member>
<member name="M:XCode.DataAccessLayer.DbBase.FormatName(System.String)">
<summary>格式化名称,如果是关键字,则格式化后返回,否则原样返回</summary>
<param name="name">名称</param>
<returns></returns>
</member>
<member name="M:XCode.DataAccessLayer.DbBase.FormatValue(XCode.DataAccessLayer.IDataColumn,System.Object)">
<summary>格式化数据为SQL数据</summary>
<param name="field">字段</param>
<param name="value">数值</param>
<returns></returns>
</member>
<member name="M:XCode.DataAccessLayer.DbBase.FormatParameterName(System.String)">
<summary>格式化参数名</summary>
<param name="name">名称</param>
<returns></returns>
</member>
<member name="M:XCode.DataAccessLayer.DbBase.StringConcat(System.String,System.String)">
<summary>字符串相加</summary>
<param name="left"></param>
<param name="right"></param>
<returns></returns>
</member>
<member name="M:XCode.DataAccessLayer.DbBase.CreateParameter(System.String,System.Object,XCode.DataAccessLayer.IDataColumn)">
<summary>创建参数</summary>
<param name="name">名称</param>
<param name="value">值</param>
<param name="field">字段</param>
<returns></returns>
</member>
<member name="M:XCode.DataAccessLayer.DbBase.CreateParameters(System.Collections.Generic.IDictionary{System.String,System.Object})">
<summary>创建参数数组</summary>
<param name="ps"></param>
<returns></returns>
</member>
<member name="P:XCode.DataAccessLayer.DbBase.AutoClose">
<summary>获取 或 设置 自动关闭。每次使用完数据库连接后,是否自动关闭连接,高频操作时设为false可提升性能。默认true</summary>
</member>
<member name="P:XCode.DataAccessLayer.DbBase.SupportSchema">
<summary>是否支持Schema。默认true</summary>
</member>
<member name="M:XCode.DataAccessLayer.DbBase.ToString">
<summary>已重载。</summary>
<returns></returns>
</member>
<member name="P:XCode.DataAccessLayer.DbBase.ShowSQL">
<summary>是否输出SQL语句,默认为XCode调试开关XCode.Debug</summary>
</member>
<member name="P:XCode.DataAccessLayer.DbBase.UseParameter">
<summary>参数化添删改查。默认关闭</summary>
</member>
<member name="T:XCode.DataAccessLayer.DbFactory">
<summary>数据库工厂</summary>
</member>
<member name="M:XCode.DataAccessLayer.DbFactory.Create(XCode.DataAccessLayer.DatabaseType)">
<summary>根据数据库类型创建提供者</summary>
<param name="dbType"></param>
<returns></returns>
</member>
<member name="M:XCode.DataAccessLayer.DbFactory.GetDefault(System.Type)">
<summary>根据名称获取默认提供者</summary>
<param name="dbType"></param>
<returns></returns>
</member>
<member name="M:XCode.DataAccessLayer.DbFactory.GetDefault(XCode.DataAccessLayer.DatabaseType)">
<summary>根据类型获取默认提供者</summary>
<param name="dbType"></param>
<returns></returns>
</member>
<member name="M:XCode.DataAccessLayer.DbFactory.GetProviderType(System.String,System.String)">
<summary>从提供者和连接字符串猜测数据库处理器</summary>
<param name="connStr"></param>
<param name="provider"></param>
<returns></returns>
</member>
<member name="T:XCode.DataAccessLayer.Migration">
<summary>反向工程</summary>
</member>
<member name="F:XCode.DataAccessLayer.Migration.Off">
<summary>关闭</summary>
</member>
<member name="F:XCode.DataAccessLayer.Migration.ReadOnly">
<summary>只读。异步检查差异,不执行</summary>
</member>
<member name="F:XCode.DataAccessLayer.Migration.On">
<summary>默认。新建表结构</summary>
</member>
<member name="F:XCode.DataAccessLayer.Migration.Full">
<summary>完全。新建、修改、删除</summary>
</member>
<member name="T:XCode.DataAccessLayer.IDatabase">
<summary>数据库接口</summary>
<remarks>
抽象数据库的功能特点。
对于每一个连接字符串配置,都有一个数据库实例,而不是每个数据库类型一个实例,因为同类型数据库不同版本行为不同。
</remarks>
</member>
<member name="P:XCode.DataAccessLayer.IDatabase.Type">
<summary>数据库类型</summary>
</member>
<member name="P:XCode.DataAccessLayer.IDatabase.Factory">
<summary>数据库提供者工厂</summary>
</member>
<member name="P:XCode.DataAccessLayer.IDatabase.ConnName">
<summary>链接名</summary>
</member>
<member name="P:XCode.DataAccessLayer.IDatabase.ConnectionString">
<summary>链接字符串</summary>
</member>
<member name="P:XCode.DataAccessLayer.IDatabase.Pool">
<summary>连接池</summary>
</member>
<member name="P:XCode.DataAccessLayer.IDatabase.Owner">
<summary>拥有者</summary>
</member>
<member name="P:XCode.DataAccessLayer.IDatabase.DatabaseName">
<summary>数据库名</summary>
</member>
<member name="P:XCode.DataAccessLayer.IDatabase.ServerVersion">
<summary>数据库服务器版本</summary>
</member>
<member name="P:XCode.DataAccessLayer.IDatabase.ShowSQL">
<summary>是否输出SQL</summary>
</member>
<member name="P:XCode.DataAccessLayer.IDatabase.UseParameter">
<summary>参数化添删改查。默认关闭</summary>
</member>
<member name="P:XCode.DataAccessLayer.IDatabase.Migration">
<summary>反向工程。Off 关闭;ReadOnly 只读不执行;On 打开,新建;Full 完全,修改删除</summary>
</member>
<member name="M:XCode.DataAccessLayer.IDatabase.CreateSession">
<summary>创建数据库会话</summary>
<returns></returns>
</member>
<member name="M:XCode.DataAccessLayer.IDatabase.CreateMetaData">
<summary>创建元数据对象</summary>
<returns></returns>
</member>
<member name="M:XCode.DataAccessLayer.IDatabase.Support(System.String)">
<summary>是否支持该提供者所描述的数据库</summary>
<param name="providerName">提供者</param>
<returns></returns>
</member>
<member name="M:XCode.DataAccessLayer.IDatabase.PageSplit(System.String,System.Int64,System.Int64,System.String)">
<summary>构造分页SQL</summary>
<remarks>
两个构造分页SQL的方法,区别就在于查询生成器能够构造出来更好的分页语句,尽可能的避免子查询。
MS体系的分页精髓就在于唯一键,当唯一键带有Asc/Desc/Unkown等排序结尾时,就采用最大最小值分页,否则使用较次的TopNotIn分页。
TopNotIn分页和MaxMin分页的弊端就在于无法完美的支持GroupBy查询分页,只能查到第一页,往后分页就不行了,因为没有主键。
</remarks>
<param name="sql">SQL语句</param>
<param name="startRowIndex">开始行,0表示第一行</param>
<param name="maximumRows">最大返回行数,0表示所有行</param>
<param name="keyColumn">唯一键。用于not in分页</param>
<returns>分页SQL</returns>
</member>
<member name="M:XCode.DataAccessLayer.IDatabase.PageSplit(XCode.DataAccessLayer.SelectBuilder,System.Int64,System.Int64)">
<summary>构造分页SQL</summary>
<remarks>
两个构造分页SQL的方法,区别就在于查询生成器能够构造出来更好的分页语句,尽可能的避免子查询。
MS体系的分页精髓就在于唯一键,当唯一键带有Asc/Desc/Unkown等排序结尾时,就采用最大最小值分页,否则使用较次的TopNotIn分页。
TopNotIn分页和MaxMin分页的弊端就在于无法完美的支持GroupBy查询分页,只能查到第一页,往后分页就不行了,因为没有主键。
</remarks>
<param name="builder">查询生成器</param>
<param name="startRowIndex">开始行,0表示第一行</param>
<param name="maximumRows">最大返回行数,0表示所有行</param>
<returns>分页SQL</returns>
</member>
<member name="P:XCode.DataAccessLayer.IDatabase.LongTextLength">
<summary>长文本长度</summary>
</member>
<member name="M:XCode.DataAccessLayer.IDatabase.FormatDateTime(System.DateTime)">
<summary>格式化时间为SQL字符串</summary>
<param name="dateTime">时间值</param>
<returns></returns>
</member>
<member name="M:XCode.DataAccessLayer.IDatabase.FormatName(System.String)">
<summary>格式化名称,如果不是关键字,则原样返回</summary>
<param name="name">名称</param>
<returns></returns>
</member>
<member name="M:XCode.DataAccessLayer.IDatabase.FormatValue(XCode.DataAccessLayer.IDataColumn,System.Object)">
<summary>格式化数据为SQL数据</summary>
<param name="field">字段</param>
<param name="value">数值</param>
<returns></returns>
</member>
<member name="M:XCode.DataAccessLayer.IDatabase.FormatParameterName(System.String)">
<summary>格式化参数名</summary>
<param name="name">名称</param>
<returns></returns>
</member>
<member name="M:XCode.DataAccessLayer.IDatabase.StringConcat(System.String,System.String)">
<summary>字符串相加</summary>
<param name="left"></param>
<param name="right"></param>
<returns></returns>
</member>
<member name="M:XCode.DataAccessLayer.IDatabase.CreateParameter(System.String,System.Object,XCode.DataAccessLayer.IDataColumn)">
<summary>创建参数</summary>
<param name="name">名称</param>
<param name="value">值</param>
<param name="field">字段</param>
<returns></returns>
</member>
<member name="M:XCode.DataAccessLayer.IDatabase.CreateParameters(System.Collections.Generic.IDictionary{System.String,System.Object})">
<summary>创建参数数组</summary>
<param name="ps"></param>
<returns></returns>
</member>
<member name="P:XCode.DataAccessLayer.IDatabase.AutoClose">
<summary>获取 或 设置 自动关闭。每次使用完数据库连接后,是否自动关闭连接,高频操作时设为false可提升性能。默认true</summary>
</member>
<member name="P:XCode.DataAccessLayer.IDatabase.Readonly">
<summary>本连接数据只读。需求不够强劲,暂不支持在连接字符串中设置</summary>
</member>
<member name="P:XCode.DataAccessLayer.IDatabase.TablePrefix">
<summary>表前缀。所有在该连接上的表名都自动增加该前缀</summary>
</member>
<member name="T:XCode.DataAccessLayer.DbMetaData">
<summary>数据库元数据</summary>
</member>
<member name="M:XCode.DataAccessLayer.DbMetaData.SetTables(XCode.DataAccessLayer.Migration,XCode.DataAccessLayer.IDataTable[])">
<summary>设置表模型,检查数据表是否匹配表模型,反向工程</summary>
<param name="mode">设置</param>
<param name="tables"></param>
</member>
<member name="M:XCode.DataAccessLayer.DbMetaData.CheckColumnsChange(XCode.DataAccessLayer.IDataTable,XCode.DataAccessLayer.IDataTable,System.Boolean,System.Boolean)">
<summary>检查字段改变。某些数据库(如SQLite)没有添删改字段的DDL语法,可重载该方法,使用重建表方法ReBuildTable</summary>
<param name="entitytable"></param>
<param name="dbtable"></param>
<param name="onlySql"></param>
<param name="noDelete"></param>
<returns></returns>
</member>
<member name="M:XCode.DataAccessLayer.DbMetaData.CheckTableDescriptionAndIndex(XCode.DataAccessLayer.IDataTable,XCode.DataAccessLayer.IDataTable,XCode.DataAccessLayer.Migration)">
<summary>检查表说明和索引</summary>
<param name="entitytable"></param>
<param name="dbtable"></param>
<param name="mode"></param>
<returns></returns>
</member>
<member name="M:XCode.DataAccessLayer.DbMetaData.IsColumnChanged(XCode.DataAccessLayer.IDataColumn,XCode.DataAccessLayer.IDataColumn,XCode.DataAccessLayer.IDatabase)">
<summary>检查字段是否有改变,除了默认值和备注以外</summary>
<param name="entityColumn"></param>
<param name="dbColumn"></param>
<param name="entityDb"></param>
<returns></returns>
</member>
<member name="M:XCode.DataAccessLayer.DbMetaData.PerformSchema(System.Text.StringBuilder,System.Boolean,XCode.DataAccessLayer.DDLSchema,System.Object[])">
<summary>
获取架构语句,该执行的已经执行。
如果取不到语句,则输出日志信息;
如果不是纯语句,则执行;
</summary>
<param name="sb"></param>
<param name="onlySql"></param>
<param name="schema"></param>
<param name="values"></param>
</member>
<member name="M:XCode.DataAccessLayer.DbMetaData.GetSchemaSQL(XCode.DataAccessLayer.DDLSchema,System.Object[])">
<summary>获取数据定义语句</summary>
<param name="schema">数据定义模式</param>
<param name="values">其它信息</param>
<returns></returns>
</member>
<member name="M:XCode.DataAccessLayer.DbMetaData.SetSchema(XCode.DataAccessLayer.DDLSchema,System.Object[])">
<summary>设置数据定义模式</summary>
<param name="schema">数据定义模式</param>
<param name="values">其它信息</param>
<returns></returns>
</member>
<member name="M:XCode.DataAccessLayer.DbMetaData.FieldClause(XCode.DataAccessLayer.IDataColumn,System.Boolean)">
<summary>字段片段</summary>
<param name="field">字段</param>
<param name="onlyDefine">仅仅定义。定义操作才允许设置自增和使用默认值</param>
<returns></returns>
</member>
<member name="M:XCode.DataAccessLayer.DbMetaData.GetFieldConstraints(XCode.DataAccessLayer.IDataColumn,System.Boolean)">
<summary>取得字段约束</summary>
<param name="field">字段</param>
<param name="onlyDefine">仅仅定义</param>
<returns></returns>
</member>
<member name="M:XCode.DataAccessLayer.DbMetaData.GetTables">
<summary>取得所有表构架</summary>
<returns></returns>
</member>
<member name="M:XCode.DataAccessLayer.DbMetaData.OnGetTables(System.String[])">
<summary>取得所有表构架</summary>
<returns></returns>
</member>
<member name="M:XCode.DataAccessLayer.DbMetaData.GetTables(System.Data.DataRow[],System.String[],System.Collections.Generic.IDictionary{System.String,System.Data.DataTable})">
<summary>根据数据行取得数据表</summary>
<param name="rows">数据行</param>
<param name="names">指定表名</param>
<param name="data">扩展</param>
<returns></returns>
</member>
<member name="M:XCode.DataAccessLayer.DbMetaData.FixTable(XCode.DataAccessLayer.IDataTable,System.Data.DataRow,System.Collections.Generic.IDictionary{System.String,System.Data.DataTable})">
<summary>修正表</summary>
<param name="table"></param>
<param name="dr"></param>
<param name="data"></param>
</member>
<member name="M:XCode.DataAccessLayer.DbMetaData.GetFields(XCode.DataAccessLayer.IDataTable,System.Data.DataTable,System.Collections.Generic.IDictionary{System.String,System.Data.DataTable})">
<summary>取得指定表的所有列构架</summary>
<param name="table"></param>
<param name="columns">列</param>
<param name="data"></param>
<returns></returns>
</member>
<member name="M:XCode.DataAccessLayer.DbMetaData.GetFields(XCode.DataAccessLayer.IDataTable,System.Data.DataRow[])">
<summary>获取指定表的字段</summary>
<param name="table"></param>
<param name="rows"></param>
<returns></returns>
</member>
<member name="M:XCode.DataAccessLayer.DbMetaData.FixField(XCode.DataAccessLayer.IDataColumn,System.Data.DataRow)">
<summary>修正指定字段</summary>
<param name="field">字段</param>
<param name="dr"></param>
</member>
<member name="M:XCode.DataAccessLayer.DbMetaData.GetIndexes(XCode.DataAccessLayer.IDataTable,System.Data.DataTable,System.Data.DataTable)">
<summary>获取索引</summary>
<param name="table"></param>
<param name="indexes">索引</param>
<param name="indexColumns">索引列</param>
<returns></returns>
</member>
<member name="M:XCode.DataAccessLayer.DbMetaData.FixIndex(XCode.DataAccessLayer.IDataIndex,System.Data.DataRow)">
<summary>修正索引</summary>
<param name="index"></param>
<param name="dr"></param>
</member>
<member name="P:XCode.DataAccessLayer.DbMetaData.Types">
<summary>类型映射</summary>
</member>
<member name="P:XCode.DataAccessLayer.DbMetaData.FieldTypeMaps">
<summary>字段类型映射</summary>
</member>
<member name="M:XCode.DataAccessLayer.DbMetaData.GetFieldType(XCode.DataAccessLayer.IDataColumn)">
<summary>取字段类型</summary>
<param name="field">字段</param>
<returns></returns>
</member>
<member name="M:XCode.DataAccessLayer.DbMetaData.GetDataType(XCode.DataAccessLayer.IDataColumn)">
<summary>获取数据类型</summary>
<param name="field"></param>
<returns></returns>
</member>
<member name="M:XCode.DataAccessLayer.DbMetaData.GetDataType(System.String)">
<summary>获取数据类型</summary>
<param name="rawType"></param>
<returns></returns>
</member>
<member name="P:XCode.DataAccessLayer.DbMetaData.Database">
<summary>数据库</summary>
</member>
<member name="P:XCode.DataAccessLayer.DbMetaData.MetaDataCollections">
<summary>所有元数据集合</summary>
</member>
<member name="P:XCode.DataAccessLayer.DbMetaData.ReservedWords">
<summary>保留关键字</summary>
</member>
<member name="M:XCode.DataAccessLayer.DbMetaData.GetSchema(System.String,System.String[])">
<summary>返回数据源的架构信息</summary>
<param name="collectionName">指定要返回的架构的名称。</param>
<param name="restrictionValues">为请求的架构指定一组限制值。</param>
<returns></returns>
</member>
<member name="M:XCode.DataAccessLayer.DbMetaData.TryGetDataRowValue``1(System.Data.DataRow,System.String,``0@)">
<summary>尝试从指定数据行中读取指定名称列的数据</summary>
<typeparam name="T"></typeparam>
<param name="dr"></param>
<param name="name">名称</param>
<param name="value">数值</param>
<returns></returns>
</member>
<member name="M:XCode.DataAccessLayer.DbMetaData.GetDataRowValue``1(System.Data.DataRow,System.String[])">
<summary>获取指定数据行指定字段的值,不存在时返回空</summary>
<typeparam name="T"></typeparam>
<param name="dr"></param>
<param name="names">名称</param>
<returns></returns>
</member>
<member name="M:XCode.DataAccessLayer.DbMetaData.FormatName(System.String)">
<summary>格式化关键字</summary>
<param name="name">名称</param>
<returns></returns>
</member>
<member name="M:XCode.DataAccessLayer.DbMetaData.WriteLog(System.String)">
<summary>输出日志</summary>
<param name="msg"></param>
</member>
<member name="M:XCode.DataAccessLayer.DbMetaData.WriteLog(System.String,System.Object[])">
<summary>输出日志</summary>
<param name="format"></param>
<param name="args"></param>
</member>
<member name="T:XCode.DataAccessLayer.ModelHelper">
<summary>数据模型扩展</summary>
</member>
<member name="M:XCode.DataAccessLayer.ModelHelper.GetColumn(XCode.DataAccessLayer.IDataTable,System.String)">
<summary>根据字段名获取字段</summary>
<param name="table"></param>
<param name="name">名称</param>
<returns></returns>
</member>
<member name="M:XCode.DataAccessLayer.ModelHelper.GetColumns(XCode.DataAccessLayer.IDataTable,System.String[])">
<summary>根据字段名数组获取字段数组</summary>
<param name="table"></param>
<param name="names"></param>
<returns></returns>
</member>
<member name="M:XCode.DataAccessLayer.ModelHelper.GetAllColumns(XCode.DataAccessLayer.IDataTable,System.Collections.Generic.IEnumerable{XCode.DataAccessLayer.IDataTable},System.Boolean)">
<summary>获取全部字段,包括继承的父类</summary>
<param name="table"></param>
<param name="tables">在该表集合里面找父类</param>
<param name="baseFirst">是否父类字段在前</param>
<returns></returns>
</member>
<member name="M:XCode.DataAccessLayer.ModelHelper.Is(XCode.DataAccessLayer.IDataTable,System.String)">
<summary>判断表是否等于指定名字</summary>
<param name="table"></param>
<param name="name">名称</param>
<returns></returns>
</member>
<member name="M:XCode.DataAccessLayer.ModelHelper.Is(XCode.DataAccessLayer.IDataColumn,System.String)">
<summary>判断字段是否等于指定名字</summary>
<param name="column"></param>
<param name="name">名称</param>
<returns></returns>
</member>
<member name="M:XCode.DataAccessLayer.ModelHelper.GetIndex(XCode.DataAccessLayer.IDataTable,System.String[])">
<summary>根据字段名找索引</summary>
<param name="table"></param>
<param name="columnNames"></param>
<returns></returns>
</member>
<member name="M:XCode.DataAccessLayer.ModelHelper.ToXml(System.Collections.Generic.IEnumerable{XCode.DataAccessLayer.IDataTable},System.Collections.Generic.IDictionary{System.String,System.String})">
<summary>导出模型</summary>
<param name="tables"></param>
<param name="atts">附加属性</param>
<returns></returns>
</member>
<member name="M:XCode.DataAccessLayer.ModelHelper.FromXml(System.String,System.Func{XCode.DataAccessLayer.IDataTable},System.Collections.Generic.IDictionary{System.String,System.String})">
<summary>导入模型</summary>
<param name="xml"></param>
<param name="createTable">用于创建<see cref="T:XCode.DataAccessLayer.IDataTable"/>实例的委托</param>
<param name="atts">附加属性</param>
<returns></returns>
</member>
<member name="M:XCode.DataAccessLayer.ModelHelper.ReadXml(XCode.DataAccessLayer.IDataTable,System.Xml.XmlReader)">
<summary>读取</summary>
<param name="table"></param>
<param name="reader"></param>
<returns></returns>
</member>
<member name="M:XCode.DataAccessLayer.ModelHelper.WriteXml(XCode.DataAccessLayer.IDataTable,System.Xml.XmlWriter)">
<summary>写入</summary>
<param name="table"></param>
<param name="writer"></param>
</member>
<member name="M:XCode.DataAccessLayer.ModelHelper.ReadXml(System.Xml.XmlReader,System.Object)">
<summary>读取</summary>
<param name="reader"></param>
<param name="value">数值</param>
</member>
<member name="M:XCode.DataAccessLayer.ModelHelper.WriteXml(System.Xml.XmlWriter,System.Object,System.Boolean)">
<summary>写入</summary>
<param name="writer"></param>
<param name="value">数值</param>
<param name="writeDefaultValueMember">是否写数值为默认值的成员。为了节省空间,默认不写。</param>
</member>
<member name="M:XCode.DataAccessLayer.ModelHelper.Fix(XCode.DataAccessLayer.IDataColumn,XCode.DataAccessLayer.IDataColumn)">
<summary>根据类型修正字段的一些默认值</summary>
<param name="dc"></param>
<param name="oridc"></param>
<returns></returns>
</member>
<member name="T:XCode.DataAccessLayer.IDataColumn">
<summary>数据列</summary>
</member>
<member name="P:XCode.DataAccessLayer.IDataColumn.Name">
<summary>名称</summary>
</member>
<member name="P:XCode.DataAccessLayer.IDataColumn.ColumnName">
<summary>列名</summary>
</member>
<member name="P:XCode.DataAccessLayer.IDataColumn.DataType">
<summary>数据类型</summary>
</member>
<member name="P:XCode.DataAccessLayer.IDataColumn.RawType">
<summary>
原始数据类型。
当且仅当目标数据库同为该数据库类型时,采用实体属性信息上的RawType作为反向工程的目标字段类型,以期获得开发和生产的最佳兼容。
</summary>
</member>
<member name="P:XCode.DataAccessLayer.IDataColumn.Identity">
<summary>标识</summary>
</member>
<member name="P:XCode.DataAccessLayer.IDataColumn.PrimaryKey">
<summary>主键</summary>
</member>
<member name="P:XCode.DataAccessLayer.IDataColumn.Master">
<summary>是否主字段。主字段作为业务主要字段,代表当前数据行意义</summary>
</member>
<member name="P:XCode.DataAccessLayer.IDataColumn.Length">
<summary>长度</summary>
</member>
<member name="P:XCode.DataAccessLayer.IDataColumn.Precision">
<summary>精度</summary>
</member>
<member name="P:XCode.DataAccessLayer.IDataColumn.Scale">
<summary>位数</summary>
</member>
<member name="P:XCode.DataAccessLayer.IDataColumn.Nullable">
<summary>允许空</summary>
</member>
<member name="P:XCode.DataAccessLayer.IDataColumn.DisplayName">
<summary>显示名。如果有Description则使用Description,否则使用Name</summary>
</member>
<member name="P:XCode.DataAccessLayer.IDataColumn.Description">
<summary>说明</summary>
</member>
<member name="P:XCode.DataAccessLayer.IDataColumn.Table">
<summary>说明数据表</summary>
</member>
<member name="P:XCode.DataAccessLayer.IDataColumn.Properties">
<summary>扩展属性</summary>
</member>
<member name="M:XCode.DataAccessLayer.IDataColumn.Fix">
<summary>重新计算修正别名。避免与其它字段名或表名相同,避免关键字</summary>
<returns></returns>
</member>
<member name="M:XCode.DataAccessLayer.IDataColumn.Clone(XCode.DataAccessLayer.IDataTable)">
<summary>克隆到指定的数据表</summary>
<param name="table"></param>
</member>
<member name="T:XCode.DataAccessLayer.IDataIndex">
<summary>
数据索引。
可根据索引生成查询方法,是否唯一决定该索引返回的是单个实体还是实体集合。
正向工程将会为所有一对一索引建立关系。
</summary>
</member>
<member name="P:XCode.DataAccessLayer.IDataIndex.Name">
<summary>名称</summary>
</member>
<member name="P:XCode.DataAccessLayer.IDataIndex.Columns">
<summary>数据列集合</summary>
</member>
<member name="P:XCode.DataAccessLayer.IDataIndex.Unique">
<summary>是否唯一</summary>
</member>
<member name="P:XCode.DataAccessLayer.IDataIndex.PrimaryKey">
<summary>是否主键</summary>
</member>
<member name="P:XCode.DataAccessLayer.IDataIndex.Table">
<summary>说明数据表</summary>
</member>
<member name="M:XCode.DataAccessLayer.IDataIndex.Fix">
<summary>修正数据</summary>
<returns></returns>
</member>
<member name="M:XCode.DataAccessLayer.IDataIndex.Clone(XCode.DataAccessLayer.IDataTable)">
<summary>克隆到指定的数据表</summary>
<param name="table"></param>
</member>
<member name="T:XCode.DataAccessLayer.IDataTable">
<summary>数据表</summary>
</member>
<member name="P:XCode.DataAccessLayer.IDataTable.Name">
<summary>名称</summary>
</member>
<member name="P:XCode.DataAccessLayer.IDataTable.TableName">
<summary>表名</summary>
</member>
<member name="P:XCode.DataAccessLayer.IDataTable.BaseType">
<summary>基类</summary>
</member>
<member name="P:XCode.DataAccessLayer.IDataTable.Owner">
<summary>所有者</summary>
</member>
<member name="P:XCode.DataAccessLayer.IDataTable.ConnName">
<summary>连接名</summary>
</member>
<member name="P:XCode.DataAccessLayer.IDataTable.DbType">
<summary>
数据库类型。
仅用于记录实体类由何种类型数据库生成,当且仅当目标数据库同为该数据库类型时,采用实体属性信息上的RawType作为反向工程的目标字段类型,以期获得开发和生产的最佳兼容。
</summary>
</member>
<member name="P:XCode.DataAccessLayer.IDataTable.IsView">
<summary>是否视图</summary>
</member>
<member name="P:XCode.DataAccessLayer.IDataTable.DisplayName">
<summary>显示名。如果有Description则使用Description,否则使用Name</summary>
</member>
<member name="P:XCode.DataAccessLayer.IDataTable.Description">
<summary>说明</summary>
</member>
<member name="P:XCode.DataAccessLayer.IDataTable.InsertOnly">
<summary>仅插入的日志型数据</summary>
</member>
<member name="P:XCode.DataAccessLayer.IDataTable.Columns">
<summary>数据列集合。可以是空集合,但不能为null。</summary>
</member>
<member name="P:XCode.DataAccessLayer.IDataTable.Indexes">
<summary>数据索引集合。可以是空集合,但不能为null。</summary>
</member>
<member name="P:XCode.DataAccessLayer.IDataTable.PrimaryKeys">
<summary>主键集合。可以是空集合,但不能为null。</summary>
</member>
<member name="P:XCode.DataAccessLayer.IDataTable.Master">
<summary>主字段。主字段作为业务主要字段,代表当前数据行意义</summary>
</member>
<member name="P:XCode.DataAccessLayer.IDataTable.Properties">
<summary>扩展属性</summary>
</member>
<member name="M:XCode.DataAccessLayer.IDataTable.CreateColumn">
<summary>创建数据列</summary>
<returns></returns>
</member>
<member name="M:XCode.DataAccessLayer.IDataTable.CreateIndex">
<summary>创建数据索引</summary>
<returns></returns>
</member>
<member name="M:XCode.DataAccessLayer.IDataTable.Fix">
<summary>修正数据</summary>
</member>
<member name="T:XCode.DataAccessLayer.IMetaData">
<summary>数据库元数据接口</summary>
</member>
<member name="P:XCode.DataAccessLayer.IMetaData.Database">
<summary>数据库</summary>
</member>
<member name="P:XCode.DataAccessLayer.IMetaData.MetaDataCollections">
<summary>所有元数据集合</summary>
</member>
<member name="P:XCode.DataAccessLayer.IMetaData.ReservedWords">
<summary>保留关键字</summary>
</member>
<member name="M:XCode.DataAccessLayer.IMetaData.GetTables">
<summary>取得表模型,正向工程</summary>
<returns></returns>
</member>
<member name="M:XCode.DataAccessLayer.IMetaData.SetTables(XCode.DataAccessLayer.Migration,XCode.DataAccessLayer.IDataTable[])">
<summary>设置表模型,检查数据表是否匹配表模型,反向工程</summary>
<param name="setting">设置</param>
<param name="tables"></param>
</member>
<member name="M:XCode.DataAccessLayer.IMetaData.GetSchemaSQL(XCode.DataAccessLayer.DDLSchema,System.Object[])">
<summary>获取数据定义语句</summary>
<param name="schema">数据定义模式</param>
<param name="values">其它信息</param>
<returns>数据定义语句</returns>
</member>
<member name="M:XCode.DataAccessLayer.IMetaData.SetSchema(XCode.DataAccessLayer.DDLSchema,System.Object[])">
<summary>设置数据定义模式</summary>
<param name="schema">数据定义模式</param>
<param name="values">其它信息</param>
<returns></returns>
</member>
<member name="T:XCode.DataAccessLayer.SerializableDataMember">
<summary>可序列化数据成员</summary>
</member>
<member name="T:XCode.DataAccessLayer.ConnectionStringBuilder">
<summary>连接字符串构造器</summary>
</member>
<member name="P:XCode.DataAccessLayer.ConnectionStringBuilder.Item(System.String)">
<summary>获取 或 设置 设置项</summary>
<param name="key"></param>
<returns></returns>
</member>
<member name="M:XCode.DataAccessLayer.ConnectionStringBuilder.#ctor(System.String)">
<summary>实例化</summary>
</member>
<member name="P:XCode.DataAccessLayer.ConnectionStringBuilder.ConnectionString">
<summary>连接字符串</summary>
</member>
<member name="M:XCode.DataAccessLayer.ConnectionStringBuilder.TryGetValue(System.String,System.String@)">
<summary>获取连接字符串中的项</summary>
<param name="key"></param>
<param name="value">数值</param>
<returns></returns>
</member>
<member name="M:XCode.DataAccessLayer.ConnectionStringBuilder.TryGetAndRemove(System.String,System.String@)">
<summary>获取并删除连接字符串中的项</summary>
<param name="key"></param>
<param name="value">数值</param>
<returns></returns>
</member>
<member name="M:XCode.DataAccessLayer.ConnectionStringBuilder.TryAdd(System.String,System.String)">
<summary>尝试添加项,如果存在则失败</summary>
<param name="key"></param>
<param name="value"></param>
<returns></returns>
</member>
<member name="M:XCode.DataAccessLayer.ConnectionStringBuilder.ToString">
<summary>已重载。</summary>
<returns></returns>
</member>
<member name="T:XCode.DataAccessLayer.XIndex">
<summary>索引</summary>
</member>
<member name="P:XCode.DataAccessLayer.XIndex.Name">
<summary>名称</summary>
</member>
<member name="P:XCode.DataAccessLayer.XIndex.Columns">
<summary>数据列集合</summary>
</member>
<member name="P:XCode.DataAccessLayer.XIndex.Unique">
<summary>是否唯一</summary>
</member>
<member name="P:XCode.DataAccessLayer.XIndex.PrimaryKey">
<summary>是否主键</summary>
</member>
<member name="P:XCode.DataAccessLayer.XIndex.Table">
<summary>表</summary>
</member>
<member name="M:XCode.DataAccessLayer.XIndex.#ctor">
<summary>实例化</summary>
</member>
<member name="M:XCode.DataAccessLayer.XIndex.Fix">
<summary>修正数据</summary>
<returns></returns>
</member>
<member name="M:XCode.DataAccessLayer.XIndex.System#ICloneable#Clone">
<summary>克隆</summary>
<returns></returns>
</member>
<member name="M:XCode.DataAccessLayer.XIndex.Clone(XCode.DataAccessLayer.IDataTable)">
<summary>克隆</summary>
<param name="table"></param>
<returns></returns>
</member>
<member name="M:XCode.DataAccessLayer.XIndex.ToString">
<summary>已重载。</summary>
<returns></returns>
</member>
<member name="T:XCode.DataAccessLayer.DbSession">
<summary>数据库会话基类</summary>
</member>
<member name="M:XCode.DataAccessLayer.DbSession.OnDispose(System.Boolean)">
<summary>销毁资源时,回滚未提交事务,并关闭数据库连接</summary>
<param name="disposing"></param>
</member>
<member name="P:XCode.DataAccessLayer.DbSession.Database">
<summary>数据库</summary>
</member>
<member name="P:XCode.DataAccessLayer.DbSession.DbType">
<summary>返回数据库类型。外部DAL数据库类请使用Other</summary>
</member>
<member name="P:XCode.DataAccessLayer.DbSession.Factory">
<summary>工厂</summary>
</member>
<member name="P:XCode.DataAccessLayer.DbSession.ConnectionString">
<summary>链接字符串,会话单独保存,允许修改,修改不会影响数据库中的连接字符串</summary>
</member>
<member name="P:XCode.DataAccessLayer.DbSession.Conn">
<summary>数据连接对象。</summary>
</member>
<member name="P:XCode.DataAccessLayer.DbSession.QueryTimes">
<summary>查询次数</summary>
</member>
<member name="P:XCode.DataAccessLayer.DbSession.ExecuteTimes">
<summary>执行次数</summary>
</member>
<member name="P:XCode.DataAccessLayer.DbSession.ThreadID">
<summary>线程编号,每个数据库会话应该只属于一个线程,该属性用于检查错误的跨线程操作</summary>
</member>
<member name="P:XCode.DataAccessLayer.DbSession.Opened">
<summary>连接是否已经打开</summary>
</member>
<member name="M:XCode.DataAccessLayer.DbSession.Open">
<summary>打开</summary>
</member>
<member name="M:XCode.DataAccessLayer.DbSession.Close">
<summary>关闭</summary>
</member>
<member name="M:XCode.DataAccessLayer.DbSession.AutoClose">
<summary>自动关闭。启用事务后,不关闭连接。</summary>
</member>
<member name="M:XCode.DataAccessLayer.DbSession.SetAutoClose(System.Nullable{System.Boolean})">
<summary>设置自动关闭。启用、禁用、继承</summary>
<param name="enable"></param>
</member>
<member name="M:XCode.DataAccessLayer.DbSession.OnException(System.Exception)">
<summary>当异常发生时触发。关闭数据库连接,或者返还连接到连接池。</summary>
<param name="ex"></param>
<returns></returns>
</member>
<member name="M:XCode.DataAccessLayer.DbSession.OnException(System.Exception,System.Data.Common.DbCommand)">
<summary>当异常发生时触发。关闭数据库连接,或者返还连接到连接池。</summary>
<param name="ex"></param>
<param name="cmd"></param>
<returns></returns>
</member>
<member name="P:XCode.DataAccessLayer.DbSession.Transaction">
<summary>数据库事务</summary>
</member>
<member name="M:XCode.DataAccessLayer.DbSession.BeginTransaction(System.Data.IsolationLevel)">
<summary>开始事务</summary>
<remarks>
Read Uncommitted: 允许读取脏数据,一个事务能看到另一个事务还没有提交的数据。(不会阻止其它操作)
Read Committed: 确保事务读取的数据都必须是已经提交的数据。它限制了读取中间的,没有提交的,脏的数据。
但是它不能确保当事务重新去读取的时候,读的数据跟上次读的数据是一样的,也就是说当事务第一次读取完数据后,
该数据是可能被其他事务修改的,当它再去读取的时候,数据可能是不一样的。(数据隐藏,不阻止)
Repeatable Read: 是一个更高级别的隔离级别,如果事务再去读取同样的数据,先前的数据是没有被修改过的。(阻止其它修改)
Serializable: 它做出了最有力的保证,除了每次读取的数据是一样的,它还确保每次读取没有新的数据。(阻止其它添删改)
</remarks>
<param name="level">事务隔离等级</param>
<returns>剩下的事务计数</returns>
</member>
<member name="M:XCode.DataAccessLayer.DbSession.Commit">
<summary>提交事务</summary>
<returns>剩下的事务计数</returns>
</member>
<member name="M:XCode.DataAccessLayer.DbSession.Rollback(System.Boolean)">
<summary>回滚事务</summary>
<param name="ignoreException">是否忽略异常</param>
<returns>剩下的事务计数</returns>
</member>
<member name="M:XCode.DataAccessLayer.DbSession.Query(System.String,System.Data.CommandType,System.Data.IDataParameter[])">
<summary>执行SQL查询,返回记录集</summary>
<param name="sql">SQL语句</param>
<param name="type">命令类型,默认SQL文本</param>
<param name="ps">命令参数</param>
<returns></returns>
</member>
<member name="M:XCode.DataAccessLayer.DbSession.Query(System.Data.Common.DbCommand)">
<summary>执行DbCommand,返回记录集</summary>
<param name="cmd">DbCommand</param>
<returns></returns>
</member>
<member name="M:XCode.DataAccessLayer.DbSession.Query(System.String,System.Data.IDataParameter[])">
<summary>执行SQL查询,返回记录集</summary>
<param name="sql">SQL语句</param>
<param name="ps">命令参数</param>
<returns></returns>
</member>
<member name="M:XCode.DataAccessLayer.DbSession.QueryCount(System.String,System.Data.CommandType,System.Data.IDataParameter[])">
<summary>执行SQL查询,返回总记录数</summary>
<param name="sql">SQL语句</param>
<param name="type">命令类型,默认SQL文本</param>
<param name="ps">命令参数</param>
<returns></returns>
</member>
<member name="M:XCode.DataAccessLayer.DbSession.QueryCount(XCode.DataAccessLayer.SelectBuilder)">
<summary>执行SQL查询,返回总记录数</summary>
<param name="builder">查询生成器</param>
<returns>总记录数</returns>
</member>
<member name="M:XCode.DataAccessLayer.DbSession.QueryCountFast(System.String)">
<summary>快速查询单表记录数,稍有偏差</summary>
<param name="tableName"></param>
<returns></returns>
</member>
<member name="M:XCode.DataAccessLayer.DbSession.Execute(System.String,System.Data.CommandType,System.Data.IDataParameter[])">
<summary>执行SQL语句,返回受影响的行数</summary>
<param name="sql">SQL语句</param>
<param name="type">命令类型,默认SQL文本</param>
<param name="ps">命令参数</param>
<returns></returns>
</member>
<member name="M:XCode.DataAccessLayer.DbSession.Execute(System.Data.Common.DbCommand)">
<summary>执行DbCommand,返回受影响的行数</summary>
<param name="cmd">DbCommand</param>
<returns></returns>
</member>
<member name="M:XCode.DataAccessLayer.DbSession.InsertAndGetIdentity(System.String,System.Data.CommandType,System.Data.IDataParameter[])">
<summary>执行插入语句并返回新增行的自动编号</summary>
<param name="sql">SQL语句</param>
<param name="type">命令类型,默认SQL文本</param>
<param name="ps">命令参数</param>
<returns>新增行的自动编号</returns>
</member>
<member name="M:XCode.DataAccessLayer.DbSession.ExecuteScalar``1(System.String,System.Data.CommandType,System.Data.IDataParameter[])">
<summary>执行SQL语句,返回结果中的第一行第一列</summary>
<typeparam name="T">返回类型</typeparam>
<param name="sql">SQL语句</param>
<param name="type">命令类型,默认SQL文本</param>
<param name="ps">命令参数</param>
<returns></returns>
</member>
<member name="M:XCode.DataAccessLayer.DbSession.CreateCommand(System.String,System.Data.CommandType,System.Data.IDataParameter[])">
<summary>获取一个DbCommand。</summary>
<remark>
配置了连接,并关联了事务。
连接已打开。
使用完毕后,必须调用AutoClose方法,以使得在非事务及设置了自动关闭的情况下关闭连接
</remark>
<param name="sql">SQL语句</param>
<param name="type">命令类型,默认SQL文本</param>
<param name="ps">命令参数</param>
<returns></returns>
</member>
<member name="M:XCode.DataAccessLayer.DbSession.OnCreateCommand(System.String,System.Data.CommandType,System.Data.IDataParameter[])">
<summary>获取一个DbCommand。</summary>
<param name="sql">SQL语句</param>
<param name="type">命令类型,默认SQL文本</param>
<param name="ps">命令参数</param>
<returns></returns>
</member>
<member name="M:XCode.DataAccessLayer.DbSession.QueryAsync(System.String,System.Data.IDataParameter[])">
<summary>执行SQL查询,返回记录集</summary>
<param name="sql">SQL语句</param>
<param name="ps">命令参数</param>
<returns></returns>
</member>
<member name="M:XCode.DataAccessLayer.DbSession.Truncate(System.String)">
<summary>清空数据表,标识归零</summary>
<param name="tableName"></param>
<returns></returns>
</member>
<member name="M:XCode.DataAccessLayer.DbSession.GetSchema(System.String,System.String[])">
<summary>返回数据源的架构信息。缓存10分钟</summary>
<param name="collectionName">指定要返回的架构的名称。</param>
<param name="restrictionValues">为请求的架构指定一组限制值。</param>
<returns></returns>
</member>
<member name="P:XCode.DataAccessLayer.DbSession.ShowSQL">
<summary>是否输出SQL语句,默认为XCode调试开关XCode.Debug</summary>
</member>
<member name="M:XCode.DataAccessLayer.DbSession.WriteSQL(System.String)">
<summary>写入SQL到文本中</summary>
<param name="sql"></param>
</member>
<member name="M:XCode.DataAccessLayer.DbSession.WriteLog(System.String,System.Object[])">
<summary>输出日志</summary>
<param name="format"></param>
<param name="args"></param>
</member>
<member name="T:XCode.DataAccessLayer.IDbSession">
<summary>
数据库会话接口。
对应于与数据库的一次会话连接。
</summary>
</member>
<member name="P:XCode.DataAccessLayer.IDbSession.Database">
<summary>数据库</summary>
</member>
<member name="P:XCode.DataAccessLayer.IDbSession.ConnectionString">
<summary>链接字符串</summary>
</member>
<member name="P:XCode.DataAccessLayer.IDbSession.Conn">
<summary>数据库链接</summary>
</member>
<member name="P:XCode.DataAccessLayer.IDbSession.QueryTimes">
<summary>查询次数</summary>
</member>
<member name="P:XCode.DataAccessLayer.IDbSession.ExecuteTimes">
<summary>执行次数</summary>
</member>
<member name="P:XCode.DataAccessLayer.IDbSession.ShowSQL">
<summary>是否输出SQL</summary>
</member>
<member name="P:XCode.DataAccessLayer.IDbSession.Opened">
<summary>连接是否已经打开</summary>
</member>
<member name="M:XCode.DataAccessLayer.IDbSession.Open">
<summary>打开</summary>
</member>
<member name="M:XCode.DataAccessLayer.IDbSession.Close">
<summary>关闭</summary>
</member>
<member name="M:XCode.DataAccessLayer.IDbSession.AutoClose">
<summary>
自动关闭。
启用事务后,不关闭连接。
在提交或回滚事务时,如果IsAutoClose为true,则会自动关闭
</summary>
</member>
<member name="M:XCode.DataAccessLayer.IDbSession.SetAutoClose(System.Nullable{System.Boolean})">
<summary>设置自动关闭。启用、禁用、继承</summary>
<param name="enable"></param>
</member>
<member name="M:XCode.DataAccessLayer.IDbSession.BeginTransaction(System.Data.IsolationLevel)">
<summary>开始事务</summary>
<remarks>
Read Uncommitted: 允许读取脏数据,一个事务能看到另一个事务还没有提交的数据。(不会阻止其它操作)
Read Committed: 确保事务读取的数据都必须是已经提交的数据。它限制了读取中间的,没有提交的,脏的数据。
但是它不能确保当事务重新去读取的时候,读的数据跟上次读的数据是一样的,也就是说当事务第一次读取完数据后,
该数据是可能被其他事务修改的,当它再去读取的时候,数据可能是不一样的。(数据隐藏,不阻止)
Repeatable Read: 是一个更高级别的隔离级别,如果事务再去读取同样的数据,先前的数据是没有被修改过的。(阻止其它修改)
Serializable: 它做出了最有力的保证,除了每次读取的数据是一样的,它还确保每次读取没有新的数据。(阻止其它添删改)
</remarks>
<param name="level">事务隔离等级</param>
<returns>剩下的事务计数</returns>
</member>
<member name="M:XCode.DataAccessLayer.IDbSession.Commit">
<summary>提交事务</summary>
<returns>剩下的事务计数</returns>
</member>
<member name="M:XCode.DataAccessLayer.IDbSession.Rollback(System.Boolean)">
<summary>回滚事务</summary>
<param name="ignoreException">是否忽略异常</param>
<returns>剩下的事务计数</returns>
</member>
<member name="M:XCode.DataAccessLayer.IDbSession.Query(System.String,System.Data.CommandType,System.Data.IDataParameter[])">
<summary>执行SQL查询,返回记录集</summary>
<param name="sql">SQL语句</param>
<param name="type">命令类型,默认SQL文本</param>
<param name="ps">命令参数</param>
<returns>记录集</returns>
</member>
<member name="M:XCode.DataAccessLayer.IDbSession.Query(System.Data.Common.DbCommand)">
<summary>执行DbCommand,返回记录集</summary>
<param name="cmd">DbCommand</param>
<returns>记录集</returns>
</member>
<member name="M:XCode.DataAccessLayer.IDbSession.Query(System.String,System.Data.IDataParameter[])">
<summary>执行SQL查询,返回记录集</summary>
<param name="sql">SQL语句</param>
<param name="ps">命令参数</param>
<returns></returns>
</member>
<member name="M:XCode.DataAccessLayer.IDbSession.QueryCount(System.String,System.Data.CommandType,System.Data.IDataParameter[])">
<summary>执行SQL查询,返回总记录数</summary>
<param name="sql">SQL语句</param>
<param name="type">命令类型,默认SQL文本</param>
<param name="ps">命令参数</param>
<returns>总记录数</returns>
</member>
<member name="M:XCode.DataAccessLayer.IDbSession.QueryCount(XCode.DataAccessLayer.SelectBuilder)">
<summary>执行SQL查询,返回总记录数</summary>
<param name="builder">查询生成器</param>
<returns>总记录数</returns>
</member>
<member name="M:XCode.DataAccessLayer.IDbSession.QueryCountFast(System.String)">
<summary>快速查询单表记录数,稍有偏差</summary>
<param name="tableName">表名</param>
<returns></returns>
</member>
<member name="M:XCode.DataAccessLayer.IDbSession.Execute(System.String,System.Data.CommandType,System.Data.IDataParameter[])">
<summary>执行SQL语句,返回受影响的行数</summary>
<param name="sql">SQL语句</param>
<param name="type">命令类型,默认SQL文本</param>
<param name="ps">命令参数</param>
<returns></returns>
</member>
<member name="M:XCode.DataAccessLayer.IDbSession.Execute(System.Data.Common.DbCommand)">
<summary>执行DbCommand,返回受影响的行数</summary>
<param name="cmd">DbCommand</param>
<returns></returns>
</member>
<member name="M:XCode.DataAccessLayer.IDbSession.InsertAndGetIdentity(System.String,System.Data.CommandType,System.Data.IDataParameter[])">
<summary>执行插入语句并返回新增行的自动编号</summary>
<param name="sql">SQL语句</param>
<param name="type">命令类型,默认SQL文本</param>
<param name="ps">命令参数</param>
<returns></returns>
</member>
<member name="M:XCode.DataAccessLayer.IDbSession.ExecuteScalar``1(System.String,System.Data.CommandType,System.Data.IDataParameter[])">
<summary>执行SQL语句,返回结果中的第一行第一列</summary>
<typeparam name="T">返回类型</typeparam>
<param name="sql">SQL语句</param>
<param name="type">命令类型,默认SQL文本</param>
<param name="ps">命令参数</param>
<returns></returns>
</member>
<member name="M:XCode.DataAccessLayer.IDbSession.CreateCommand(System.String,System.Data.CommandType,System.Data.IDataParameter[])">
<summary>
获取一个DbCommand。
配置了连接,并关联了事务。
连接已打开。
使用完毕后,必须调用AutoClose方法,以使得在非事务及设置了自动关闭的情况下关闭连接
</summary>
<param name="sql">SQL语句</param>
<param name="type">命令类型,默认SQL文本</param>
<param name="ps">命令参数</param>
<returns></returns>
</member>
<member name="M:XCode.DataAccessLayer.IDbSession.QueryAsync(System.String,System.Data.IDataParameter[])">
<summary>执行SQL查询,返回记录集</summary>
<param name="sql">SQL语句</param>
<param name="ps">命令参数</param>
<returns></returns>
</member>
<member name="M:XCode.DataAccessLayer.IDbSession.Truncate(System.String)">
<summary>清空数据表,标识归零</summary>
<param name="tableName"></param>
<returns></returns>
</member>
<member name="M:XCode.DataAccessLayer.IDbSession.GetSchema(System.String,System.String[])">
<summary>返回数据源的架构信息</summary>
<param name="collectionName">指定要返回的架构的名称。</param>
<param name="restrictionValues">为请求的架构指定一组限制值。</param>
<returns></returns>
</member>
<member name="P:XCode.DataAccessLayer.MySql.Type">
<summary>返回数据库类型。</summary>
</member>
<member name="P:XCode.DataAccessLayer.MySql.Factory">
<summary>工厂</summary>
</member>
<member name="M:XCode.DataAccessLayer.MySql.OnCreateSession">
<summary>创建数据库会话</summary>
<returns></returns>
</member>
<member name="M:XCode.DataAccessLayer.MySql.OnCreateMetaData">
<summary>创建元数据对象</summary>
<returns></returns>
</member>
<member name="M:XCode.DataAccessLayer.MySql.PageSplit(System.String,System.Int64,System.Int64,System.String)">
<summary>已重写。获取分页</summary>
<param name="sql">SQL语句</param>
<param name="startRowIndex">开始行,0表示第一行</param>
<param name="maximumRows">最大返回行数,0表示所有行</param>
<param name="keyColumn">主键列。用于not in分页</param>
<returns></returns>
</member>
<member name="M:XCode.DataAccessLayer.MySql.PageSplit(XCode.DataAccessLayer.SelectBuilder,System.Int64,System.Int64)">
<summary>构造分页SQL</summary>
<remarks>
两个构造分页SQL的方法,区别就在于查询生成器能够构造出来更好的分页语句,尽可能的避免子查询。
MS体系的分页精髓就在于唯一键,当唯一键带有Asc/Desc/Unkown等排序结尾时,就采用最大最小值分页,否则使用较次的TopNotIn分页。
TopNotIn分页和MaxMin分页的弊端就在于无法完美的支持GroupBy查询分页,只能查到第一页,往后分页就不行了,因为没有主键。
</remarks>
<param name="builder">查询生成器</param>
<param name="startRowIndex">开始行,0表示第一行</param>
<param name="maximumRows">最大返回行数,0表示所有行</param>
<returns>分页SQL</returns>
</member>
<member name="M:XCode.DataAccessLayer.MySql.FormatKeyWord(System.String)">
<summary>格式化关键字</summary>
<param name="keyWord">关键字</param>
<returns></returns>
</member>
<member name="M:XCode.DataAccessLayer.MySql.FormatValue(XCode.DataAccessLayer.IDataColumn,System.Object)">
<summary>格式化数据为SQL数据</summary>
<param name="field">字段</param>
<param name="value">数值</param>
<returns></returns>
</member>
<member name="P:XCode.DataAccessLayer.MySql.LongTextLength">
<summary>长文本长度</summary>
</member>
<member name="M:XCode.DataAccessLayer.MySql.CreateParameter(System.String,System.Object,XCode.DataAccessLayer.IDataColumn)">
<summary>创建参数</summary>
<param name="name">名称</param>
<param name="value">值</param>
<param name="field">字段</param>
<returns></returns>
</member>
<member name="P:XCode.DataAccessLayer.MySql.SystemDatabaseName">
<summary>系统数据库名</summary>
</member>
<member name="M:XCode.DataAccessLayer.MySql.StringConcat(System.String,System.String)">
<summary>字符串相加</summary>
<param name="left"></param>
<param name="right"></param>
<returns></returns>
</member>
<member name="P:XCode.DataAccessLayer.MySql.EnumTables">
<summary>采用枚举来表示布尔型的数据表。由正向工程赋值</summary>
</member>
<member name="T:XCode.DataAccessLayer.MySqlSession">
<summary>MySql数据库</summary>
</member>
<member name="M:XCode.DataAccessLayer.MySqlSession.QueryCountFast(System.String)">
<summary>快速查询单表记录数,大数据量时,稍有偏差。</summary>
<param name="tableName"></param>
<returns></returns>
</member>
<member name="M:XCode.DataAccessLayer.MySqlSession.InsertAndGetIdentity(System.String,System.Data.CommandType,System.Data.IDataParameter[])">
<summary>执行插入语句并返回新增行的自动编号</summary>
<param name="sql">SQL语句</param>
<param name="type">命令类型,默认SQL文本</param>
<param name="ps">命令参数</param>
<returns>新增行的自动编号</returns>
</member>
<member name="T:XCode.DataAccessLayer.MySqlMetaData">
<summary>MySql元数据</summary>
</member>
<member name="F:XCode.DataAccessLayer.MySqlMetaData._DataTypes">
<summary>数据类型映射</summary>
</member>
<member name="P:XCode.DataAccessLayer.Oracle.Type">
<summary>返回数据库类型。外部DAL数据库类请使用Other</summary>
</member>
<member name="P:XCode.DataAccessLayer.Oracle.Factory">
<summary>工厂</summary>
</member>
<member name="M:XCode.DataAccessLayer.Oracle.#ctor">
<summary>实例化</summary>
</member>
<member name="M:XCode.DataAccessLayer.Oracle.OnCreateSession">
<summary>创建数据库会话</summary>
<returns></returns>
</member>
<member name="M:XCode.DataAccessLayer.Oracle.OnCreateMetaData">
<summary>创建元数据对象</summary>
<returns></returns>
</member>
<member name="M:XCode.DataAccessLayer.Oracle.PageSplit(System.String,System.Int64,System.Int64,System.String)">
<summary>已重写。获取分页 2012.9.26 HUIYUE修正分页BUG</summary>
<param name="sql">SQL语句</param>
<param name="startRowIndex">开始行,0表示第一行</param>
<param name="maximumRows">最大返回行数,0表示所有行</param>
<param name="keyColumn">主键列。用于not in分页</param>
<returns></returns>
</member>
<member name="M:XCode.DataAccessLayer.Oracle.PageSplit(XCode.DataAccessLayer.SelectBuilder,System.Int64,System.Int64)">
<summary>构造分页SQL</summary>
<remarks>
两个构造分页SQL的方法,区别就在于查询生成器能够构造出来更好的分页语句,尽可能的避免子查询。
MS体系的分页精髓就在于唯一键,当唯一键带有Asc/Desc/Unkown等排序结尾时,就采用最大最小值分页,否则使用较次的TopNotIn分页。
TopNotIn分页和MaxMin分页的弊端就在于无法完美的支持GroupBy查询分页,只能查到第一页,往后分页就不行了,因为没有主键。
</remarks>
<param name="builder">查询生成器</param>
<param name="startRowIndex">开始行,0表示第一行</param>
<param name="maximumRows">最大返回行数,0表示所有行</param>
<returns>分页SQL</returns>
</member>
<member name="M:XCode.DataAccessLayer.Oracle.FormatDateTime(System.DateTime)">
<summary>已重载。格式化时间</summary>
<param name="dateTime"></param>
<returns></returns>
</member>
<member name="M:XCode.DataAccessLayer.Oracle.StringConcat(System.String,System.String)">
<summary>字符串相加</summary>
<param name="left"></param>
<param name="right"></param>
<returns></returns>
</member>
<member name="M:XCode.DataAccessLayer.Oracle.CreateParameter(System.String,System.Object,XCode.DataAccessLayer.IDataColumn)">
<summary>创建参数</summary>
<param name="name">名称</param>
<param name="value">值</param>
<param name="field">字段</param>
<returns></returns>
</member>
<member name="M:XCode.DataAccessLayer.Oracle.FormatKeyWord(System.String)">
<summary>格式化关键字</summary>
<param name="keyWord">表名</param>
<returns></returns>
</member>
<member name="P:XCode.DataAccessLayer.Oracle.IgnoreCase">
<summary>是否忽略大小写,如果不忽略则在表名字段名外面加上双引号</summary>
</member>
<member name="T:XCode.DataAccessLayer.OracleSession">
<summary>Oracle数据库</summary>
</member>
<member name="M:XCode.DataAccessLayer.OracleSession.QueryCountFast(System.String)">
<summary>快速查询单表记录数,稍有偏差</summary>
<param name="tableName"></param>
<returns></returns>
</member>
<member name="M:XCode.DataAccessLayer.OracleSession.InsertAndGetIdentity(System.String,System.Data.CommandType,System.Data.IDataParameter[])">
<summary>执行插入语句并返回新增行的自动编号</summary>
<param name="sql">SQL语句</param>
<param name="type">命令类型,默认SQL文本</param>
<param name="ps">命令参数</param>
<returns>新增行的自动编号</returns>
</member>
<member name="M:XCode.DataAccessLayer.OracleSession.OnCreateCommand(System.String,System.Data.CommandType,System.Data.IDataParameter[])">
<summary>重载支持批量操作</summary>
<param name="sql"></param>
<param name="type"></param>
<param name="ps"></param>
<returns></returns>
</member>
<member name="T:XCode.DataAccessLayer.OracleMeta">
<summary>Oracle元数据</summary>
</member>
<member name="P:XCode.DataAccessLayer.OracleMeta.Owner">
<summary>拥有者</summary>
</member>
<member name="P:XCode.DataAccessLayer.OracleMeta.UserID">
<summary>用户名</summary>
</member>
<member name="M:XCode.DataAccessLayer.OracleMeta.OnGetTables(System.String[])">
<summary>取得所有表构架</summary>
<returns></returns>
</member>
<member name="M:XCode.DataAccessLayer.OracleMeta.GetFields(XCode.DataAccessLayer.IDataTable,System.Data.DataTable,System.Collections.Generic.IDictionary{System.String,System.Data.DataTable})">
<summary>取得指定表的所有列构架</summary>
<param name="table"></param>
<param name="columns">列</param>
<param name="data"></param>
<returns></returns>
</member>
<member name="F:XCode.DataAccessLayer.OracleMeta._DataTypes">
<summary>数据类型映射</summary>
</member>
<member name="T:XCode.DataAccessLayer.SelectBuilder">
<summary>SQL查询语句生成器</summary>
<remarks>
查询语句的复杂性,使得多个地方使用起来极为不方面。
应该以本类作为查询对象,直接从最上层深入到最下层
</remarks>
</member>
<member name="P:XCode.DataAccessLayer.SelectBuilder.Key">
<summary>分页主键</summary>
</member>
<member name="P:XCode.DataAccessLayer.SelectBuilder.Keys">
<summary>分页主键组</summary>
</member>
<member name="P:XCode.DataAccessLayer.SelectBuilder.IsDesc">
<summary>是否降序</summary>
</member>
<member name="P:XCode.DataAccessLayer.SelectBuilder.IsDescs">
<summary>主键组是否降序</summary>
</member>
<member name="P:XCode.DataAccessLayer.SelectBuilder.IsInt">
<summary>是否整数自增主键</summary>
</member>
<member name="P:XCode.DataAccessLayer.SelectBuilder.KeyOrder">
<summary>分页主键排序</summary>
</member>
<member name="P:XCode.DataAccessLayer.SelectBuilder.ReverseKeyOrder">
<summary>分页主键反排序</summary>
</member>
<member name="P:XCode.DataAccessLayer.SelectBuilder.KeyIsOrderBy">
<summary>排序字段是否唯一且就是主键</summary>
</member>
<member name="M:XCode.DataAccessLayer.SelectBuilder.#ctor">
<summary>实例化一个SQL语句</summary>
</member>
<member name="P:XCode.DataAccessLayer.SelectBuilder.Column">
<summary>选择列</summary>
</member>
<member name="P:XCode.DataAccessLayer.SelectBuilder.Table">
<summary>数据表</summary>
</member>
<member name="P:XCode.DataAccessLayer.SelectBuilder.Where">
<summary>条件</summary>
</member>
<member name="P:XCode.DataAccessLayer.SelectBuilder.GroupBy">
<summary>分组</summary>
</member>
<member name="P:XCode.DataAccessLayer.SelectBuilder.Having">
<summary>分组条件</summary>
</member>
<member name="P:XCode.DataAccessLayer.SelectBuilder.OrderBy">
<summary>排序</summary>
<remarks>给排序赋值时,如果没有指定分页主键,则自动采用排序中的字段</remarks>
</member>
<member name="P:XCode.DataAccessLayer.SelectBuilder.Limit">
<summary>分页用的Limit语句</summary>
</member>
<member name="P:XCode.DataAccessLayer.SelectBuilder.ColumnOrDefault">
<summary>选择列,为空时为*</summary>
</member>
<member name="P:XCode.DataAccessLayer.SelectBuilder.ColumnNoAggregate">
<summary>选择列,去除聚合,为空时为*</summary>
</member>
<member name="P:XCode.DataAccessLayer.SelectBuilder.Parameters">
<summary>参数集合</summary>
</member>
<member name="M:XCode.DataAccessLayer.SelectBuilder.Parse(System.String)">
<summary>分析一条SQL</summary>
<param name="sql"></param>
<returns></returns>
</member>
<member name="M:XCode.DataAccessLayer.SelectBuilder.ToString">
<summary>已重写。获取本Builder所分析的SQL语句</summary>
<returns></returns>
</member>
<member name="M:XCode.DataAccessLayer.SelectBuilder.SelectCount">
<summary>获取记录数的语句</summary>
<returns></returns>
</member>
<member name="M:XCode.DataAccessLayer.SelectBuilder.Clone">
<summary>克隆</summary>
<returns></returns>
</member>
<member name="M:XCode.DataAccessLayer.SelectBuilder.AppendWhereAnd(System.String,System.Object[])">
<summary>增加Where条件</summary>
<param name="format"></param>
<param name="args"></param>
<returns></returns>
</member>
<member name="M:XCode.DataAccessLayer.SelectBuilder.AppendColumn(System.String[])">
<summary>增加多个字段,必须是当前表普通字段,如果内部是*则不加</summary>
<param name="columns"></param>
<returns></returns>
</member>
<member name="M:XCode.DataAccessLayer.SelectBuilder.AsChild(System.String,System.Boolean)">
<summary>作为子查询</summary>
<param name="alias">别名,某些数据库可能需要使用as</param>
<param name="trimOrder">SqlServer需要转移OrderBy到外层,Oracle则不能</param>
<returns></returns>
</member>
<member name="M:XCode.DataAccessLayer.SelectBuilder.CloneWithGroupBy(System.String,System.Boolean)">
<summary>处理可能带GroupBy的克隆,如果带有GroupBy,则必须作为子查询,否则简单克隆即可</summary>
<param name="alias">别名,某些数据库可能需要使用as</param>
<param name="trimOrder">SqlServer需要转移OrderBy到外层,Oracle则不能</param>
<returns></returns>
</member>
<member name="M:XCode.DataAccessLayer.SelectBuilder.Split(System.String,System.Boolean[]@)">
<summary>拆分排序字句</summary>
<param name="orderby"></param>
<param name="isdescs"></param>
<returns></returns>
</member>
<member name="M:XCode.DataAccessLayer.SelectBuilder.Join(System.String[],System.Boolean[])">
<summary>连接排序字句</summary>
<param name="keys"></param>
<param name="isdescs"></param>
<returns></returns>
</member>
<member name="M:XCode.DataAccessLayer.SelectBuilder.op_Implicit(XCode.DataAccessLayer.SelectBuilder)~System.String">
<summary>类型转换</summary>
<param name="obj"></param>
<returns></returns>
</member>
<member name="P:XCode.DataAccessLayer.SQLite.Type">
<summary>返回数据库类型。</summary>
</member>
<member name="P:XCode.DataAccessLayer.SQLite.Factory">
<summary>工厂</summary>
</member>
<member name="P:XCode.DataAccessLayer.SQLite.IsMemoryDatabase">
<summary>是否内存数据库</summary>
</member>
<member name="P:XCode.DataAccessLayer.SQLite.AutoVacuum">
<summary>自动收缩数据库</summary>
<remarks>
当一个事务从数据库中删除了数据并提交后,数据库文件的大小保持不变。
即使整页的数据都被删除,该页也会变成“空闲页”等待再次被使用,而不会实际地被从数据库文件中删除。
执行vacuum操作,可以通过重建数据库文件来清除数据库内所有的未用空间,使数据库文件变小。
但是,如果一个数据库在创建时被指定为auto_vacuum数据库,当删除事务提交时,数据库文件会自动缩小。
使用auto_vacuum数据库可以节省空间,但却会增加数据库操作的时间。
</remarks>
</member>
<member name="M:XCode.DataAccessLayer.SQLite.OnCreateSession">
<summary>创建数据库会话</summary>
<returns></returns>
</member>
<member name="M:XCode.DataAccessLayer.SQLite.OnCreateMetaData">
<summary>创建元数据对象</summary>
<returns></returns>
</member>
<member name="M:XCode.DataAccessLayer.SQLite.PageSplit(System.String,System.Int64,System.Int64,System.String)">
<summary>已重写。获取分页</summary>
<param name="sql">SQL语句</param>
<param name="startRowIndex">开始行,0表示第一行</param>
<param name="maximumRows">最大返回行数,0表示所有行</param>
<param name="keyColumn">主键列。用于not in分页</param>
<returns></returns>
</member>
<member name="M:XCode.DataAccessLayer.SQLite.PageSplit(XCode.DataAccessLayer.SelectBuilder,System.Int64,System.Int64)">
<summary>构造分页SQL</summary>
<remarks>
两个构造分页SQL的方法,区别就在于查询生成器能够构造出来更好的分页语句,尽可能的避免子查询。
MS体系的分页精髓就在于唯一键,当唯一键带有Asc/Desc/Unkown等排序结尾时,就采用最大最小值分页,否则使用较次的TopNotIn分页。
TopNotIn分页和MaxMin分页的弊端就在于无法完美的支持GroupBy查询分页,只能查到第一页,往后分页就不行了,因为没有主键。
</remarks>
<param name="builder">查询生成器</param>
<param name="startRowIndex">开始行,0表示第一行</param>
<param name="maximumRows">最大返回行数,0表示所有行</param>
<returns>分页SQL</returns>
</member>
<member name="M:XCode.DataAccessLayer.SQLite.FormatKeyWord(System.String)">
<summary>格式化关键字</summary>
<param name="keyWord">关键字</param>
<returns></returns>
</member>
<member name="M:XCode.DataAccessLayer.SQLite.StringConcat(System.String,System.String)">
<summary>字符串相加</summary>
<param name="left"></param>
<param name="right"></param>
<returns></returns>
</member>
<member name="T:XCode.DataAccessLayer.SQLiteSession">
<summary>SQLite数据库</summary>
</member>
<member name="M:XCode.DataAccessLayer.SQLiteSession.InsertAndGetIdentity(System.String,System.Data.CommandType,System.Data.IDataParameter[])">
<summary>执行插入语句并返回新增行的自动编号</summary>
<param name="sql">SQL语句</param>
<param name="type">命令类型,默认SQL文本</param>
<param name="ps">命令参数</param>
<returns>新增行的自动编号</returns>
</member>
<member name="M:XCode.DataAccessLayer.SQLiteSession.Truncate(System.String)">
<summary>清空数据表,标识归零</summary>
<param name="tableName"></param>
<returns></returns>
</member>
<member name="T:XCode.DataAccessLayer.SQLiteMetaData">
<summary>SQLite元数据</summary>
</member>
<member name="F:XCode.DataAccessLayer.SQLiteMetaData._DataTypes">
<summary>数据类型映射</summary>
</member>
<member name="M:XCode.DataAccessLayer.SQLiteMetaData.Backup(System.String,System.String,System.Boolean)">
<summary>备份文件到目标文件</summary>
<param name="dbname"></param>
<param name="bakfile"></param>
<param name="compressed"></param>
</member>
<member name="M:XCode.DataAccessLayer.SQLiteMetaData.DropIndexSQL(XCode.DataAccessLayer.IDataIndex)">
<summary>删除索引方法</summary>
<param name="index"></param>
<returns></returns>
</member>
<member name="M:XCode.DataAccessLayer.SQLiteMetaData.AddTableDescriptionSQL(XCode.DataAccessLayer.IDataTable)">
<summary>添加描述</summary>
<remarks>返回Empty,告诉反向工程,该数据库类型不支持该功能,请不要输出日志</remarks>
<param name="table"></param>
<returns></returns>
</member>
<member name="M:XCode.DataAccessLayer.SQLiteMetaData.CheckTable(XCode.DataAccessLayer.IDataTable,XCode.DataAccessLayer.IDataTable,XCode.DataAccessLayer.Migration)">
<summary>已重载。因为内存数据库无法检测到架构,不知道表是否已存在,所以需要自己维护</summary>
<param name="entitytable"></param>
<param name="dbtable"></param>
<param name="mode"></param>
</member>
<member name="P:XCode.DataAccessLayer.SqlServer.Type">
<summary>返回数据库类型。外部DAL数据库类请使用Other</summary>
</member>
<member name="P:XCode.DataAccessLayer.SqlServer.Factory">
<summary>工厂</summary>
</member>
<member name="P:XCode.DataAccessLayer.SqlServer.IsSQL2012">
<summary>是否SQL2012及以上</summary>
</member>
<member name="P:XCode.DataAccessLayer.SqlServer.Version">
<summary>是否SQL2005及以上</summary>
</member>
<member name="P:XCode.DataAccessLayer.SqlServer.DataPath">
<summary>数据目录</summary>
</member>
<member name="M:XCode.DataAccessLayer.SqlServer.OnCreateSession">
<summary>创建数据库会话</summary>
<returns></returns>
</member>
<member name="M:XCode.DataAccessLayer.SqlServer.OnCreateMetaData">
<summary>创建元数据对象</summary>
<returns></returns>
</member>
<member name="M:XCode.DataAccessLayer.SqlServer.PageSplit(System.String,System.Int64,System.Int64,System.String)">
<summary>构造分页SQL</summary>
<param name="sql">SQL语句</param>
<param name="startRowIndex">开始行,0表示第一行</param>
<param name="maximumRows">最大返回行数,0表示所有行</param>
<param name="keyColumn">唯一键。用于not in分页</param>
<returns>分页SQL</returns>
</member>
<member name="M:XCode.DataAccessLayer.SqlServer.FormatSqlserver2012SQL(System.String)">
<summary>
格式化SQL SERVER 2012分页前半部分SQL语句
</summary>
<param name="sql"></param>
<returns></returns>
</member>
<member name="P:XCode.DataAccessLayer.SqlServer.LongTextLength">
<summary>长文本长度</summary>
</member>
<member name="M:XCode.DataAccessLayer.SqlServer.FormatDateTime(System.DateTime)">
<summary>格式化时间为SQL字符串</summary>
<param name="dateTime">时间值</param>
<returns></returns>
</member>
<member name="M:XCode.DataAccessLayer.SqlServer.FormatName(System.String)">
<summary>格式化名称,如果是关键字,则格式化后返回,否则原样返回</summary>
<param name="name">名称</param>
<returns></returns>
</member>
<member name="M:XCode.DataAccessLayer.SqlServer.FormatKeyWord(System.String)">
<summary>格式化关键字</summary>
<param name="keyWord">关键字</param>
<returns></returns>
</member>
<member name="P:XCode.DataAccessLayer.SqlServer.SystemDatabaseName">
<summary>系统数据库名</summary>
</member>
<member name="T:XCode.DataAccessLayer.SqlServerSession">
<summary>SqlServer数据库</summary>
</member>
<member name="M:XCode.DataAccessLayer.SqlServerSession.QueryCountFast(System.String)">
<summary>快速查询单表记录数,稍有偏差</summary>
<param name="tableName"></param>
<returns></returns>
</member>
<member name="M:XCode.DataAccessLayer.SqlServerSession.InsertAndGetIdentity(System.String,System.Data.CommandType,System.Data.IDataParameter[])">
<summary>执行插入语句并返回新增行的自动编号</summary>
<param name="sql">SQL语句</param>
<param name="type">命令类型,默认SQL文本</param>
<param name="ps">命令参数</param>
<returns>新增行的自动编号</returns>
</member>
<member name="T:XCode.DataAccessLayer.SqlServerMetaData">
<summary>SqlServer元数据</summary>
</member>
<member name="M:XCode.DataAccessLayer.SqlServerMetaData.OnGetTables(System.String[])">
<summary>取得所有表构架</summary>
<returns></returns>
</member>
<member name="P:XCode.DataAccessLayer.SqlServerMetaData.SchemaSql">
<summary>构架SQL</summary>
</member>
<member name="M:XCode.DataAccessLayer.SqlServerMetaData.DatabaseExist(System.String)">
<summary>使用数据架构确定数据库是否存在,因为使用系统视图可能没有权限</summary>
<param name="dbname"></param>
<returns></returns>
</member>
<member name="M:XCode.DataAccessLayer.SqlServerMetaData.TableExist(XCode.DataAccessLayer.IDataTable)">
<summary>使用数据架构确定数据表是否存在,因为使用系统视图可能没有权限</summary>
<param name="table"></param>
<returns></returns>
</member>
<member name="F:XCode.DataAccessLayer.SqlServerMetaData._DataTypes">
<summary>数据类型映射</summary>
</member>
<member name="M:XCode.DataAccessLayer.SqlServerMetaData.Trim(System.String,System.String,System.String)">
<summary>除去字符串两端成对出现的符号</summary>
<param name="str"></param>
<param name="prefix"></param>
<param name="suffix"></param>
<returns></returns>
</member>
<member name="T:XCode.DataAccessLayer.DDLSchema">
<summary>数据定义模式</summary>
</member>
<member name="F:XCode.DataAccessLayer.DDLSchema.CreateDatabase">
<summary>建立数据库</summary>
</member>
<member name="F:XCode.DataAccessLayer.DDLSchema.DropDatabase">
<summary>删除数据库</summary>
</member>
<member name="F:XCode.DataAccessLayer.DDLSchema.DatabaseExist">
<summary>数据库是否存在</summary>
</member>
<member name="F:XCode.DataAccessLayer.DDLSchema.CreateTable">
<summary>建立表</summary>
</member>
<member name="F:XCode.DataAccessLayer.DDLSchema.DropTable">
<summary>删除表</summary>
</member>
<member name="F:XCode.DataAccessLayer.DDLSchema.TableExist">
<summary>数据表是否存在</summary>
</member>
<member name="F:XCode.DataAccessLayer.DDLSchema.AddTableDescription">
<summary>添加表说明</summary>
</member>
<member name="F:XCode.DataAccessLayer.DDLSchema.DropTableDescription">
<summary>删除表说明</summary>
</member>
<member name="F:XCode.DataAccessLayer.DDLSchema.AddColumn">
<summary>添加字段</summary>
</member>
<member name="F:XCode.DataAccessLayer.DDLSchema.AlterColumn">
<summary>修改字段</summary>
</member>
<member name="F:XCode.DataAccessLayer.DDLSchema.DropColumn">
<summary>删除字段</summary>
</member>
<member name="F:XCode.DataAccessLayer.DDLSchema.AddColumnDescription">
<summary>添加字段说明</summary>
</member>
<member name="F:XCode.DataAccessLayer.DDLSchema.DropColumnDescription">
<summary>删除字段说明</summary>
</member>
<member name="F:XCode.DataAccessLayer.DDLSchema.CreateIndex">
<summary>建立索引</summary>
</member>
<member name="F:XCode.DataAccessLayer.DDLSchema.DropIndex">
<summary>删除索引</summary>
</member>
<member name="F:XCode.DataAccessLayer.DDLSchema.BackupDatabase">
<summary>备份数据库</summary>
</member>
<member name="F:XCode.DataAccessLayer.DDLSchema.RestoreDatabase">
<summary>还原数据库</summary>
</member>
<member name="F:XCode.DataAccessLayer.DDLSchema.CompactDatabase">
<summary>收缩数据库</summary>
</member>
<member name="T:XCode.DataAccessLayer.XField">
<summary>字段构架</summary>
</member>
<member name="P:XCode.DataAccessLayer.XField.Name">
<summary>名称</summary>
</member>
<member name="P:XCode.DataAccessLayer.XField.ColumnName">
<summary>列名</summary>
</member>
<member name="P:XCode.DataAccessLayer.XField.DataType">
<summary>数据类型</summary>
</member>
<member name="P:XCode.DataAccessLayer.XField.FieldType">
<summary>字段类型</summary>
</member>
<member name="P:XCode.DataAccessLayer.XField.RawType">
<summary>原始数据类型</summary>
</member>
<member name="P:XCode.DataAccessLayer.XField.Identity">
<summary>标识</summary>
</member>
<member name="P:XCode.DataAccessLayer.XField.PrimaryKey">
<summary>主键</summary>
</member>
<member name="P:XCode.DataAccessLayer.XField.Master">
<summary>是否主字段。主字段作为业务主要字段,代表当前数据行意义</summary>
</member>
<member name="P:XCode.DataAccessLayer.XField.Length">
<summary>长度</summary>
</member>
<member name="P:XCode.DataAccessLayer.XField.Precision">
<summary>精度</summary>
</member>
<member name="P:XCode.DataAccessLayer.XField.Scale">
<summary>位数</summary>
</member>
<member name="P:XCode.DataAccessLayer.XField.Nullable">
<summary>允许空</summary>
</member>
<member name="P:XCode.DataAccessLayer.XField.Description">
<summary>描述</summary>
</member>
<member name="P:XCode.DataAccessLayer.XField.Table">
<summary>表</summary>
</member>
<member name="P:XCode.DataAccessLayer.XField.DisplayName">
<summary>显示名</summary>
</member>
<member name="P:XCode.DataAccessLayer.XField.Properties">
<summary>扩展属性</summary>
</member>
<member name="M:XCode.DataAccessLayer.XField.#ctor">
<summary>实例化</summary>
</member>
<member name="M:XCode.DataAccessLayer.XField.Fix">
<summary>重新计算修正别名。避免与其它字段名或表名相同,避免关键字</summary>
<returns></returns>
</member>
<member name="M:XCode.DataAccessLayer.XField.ToString">
<summary>已重载。</summary>
<returns></returns>
</member>
<member name="M:XCode.DataAccessLayer.XField.System#ICloneable#Clone">
<summary>克隆</summary>
<returns></returns>
</member>
<member name="M:XCode.DataAccessLayer.XField.Clone(XCode.DataAccessLayer.IDataTable)">
<summary>克隆</summary>
<param name="table"></param>
<returns></returns>
</member>
<member name="T:XCode.DataAccessLayer.XTable">
<summary>表模型</summary>
</member>
<member name="P:XCode.DataAccessLayer.XTable.Name">
<summary>名称</summary>
</member>
<member name="P:XCode.DataAccessLayer.XTable.TableName">
<summary>表名</summary>
</member>
<member name="P:XCode.DataAccessLayer.XTable.Description">
<summary>描述</summary>
</member>
<member name="P:XCode.DataAccessLayer.XTable.IsView">
<summary>是否视图</summary>
</member>
<member name="P:XCode.DataAccessLayer.XTable.Owner">
<summary>所有者</summary>
</member>
<member name="P:XCode.DataAccessLayer.XTable.ConnName">
<summary>连接名</summary>
</member>
<member name="P:XCode.DataAccessLayer.XTable.DbType">
<summary>数据库类型</summary>
</member>
<member name="P:XCode.DataAccessLayer.XTable.BaseType">
<summary>基类</summary>
</member>
<member name="P:XCode.DataAccessLayer.XTable.InsertOnly">
<summary>仅插入的日志型数据</summary>
</member>
<member name="P:XCode.DataAccessLayer.XTable.Columns">
<summary>字段集合。可以是空集合,但不能为null。</summary>
</member>
<member name="P:XCode.DataAccessLayer.XTable.Indexes">
<summary>索引集合。可以是空集合,但不能为null。</summary>
</member>
<member name="P:XCode.DataAccessLayer.XTable.Master">
<summary>主字段。主字段作为业务主要字段,代表当前数据行意义</summary>
</member>
<member name="P:XCode.DataAccessLayer.XTable.PrimaryKeys">
<summary>主键集合。可以是空集合,但不能为null。</summary>
</member>
<member name="P:XCode.DataAccessLayer.XTable.DisplayName">
<summary>显示名</summary>
</member>
<member name="P:XCode.DataAccessLayer.XTable.Properties">
<summary>扩展属性</summary>
</member>
<member name="M:XCode.DataAccessLayer.XTable.#ctor">
<summary>初始化</summary>
</member>
<member name="M:XCode.DataAccessLayer.XTable.#ctor(System.String)">
<summary>初始化</summary>
<param name="name">名称</param>
</member>
<member name="M:XCode.DataAccessLayer.XTable.CreateColumn">
<summary>创建字段</summary>
<returns></returns>
</member>
<member name="M:XCode.DataAccessLayer.XTable.CreateIndex">
<summary>创建索引</summary>
<returns></returns>
</member>
<member name="M:XCode.DataAccessLayer.XTable.Fix">
<summary>修正数据</summary>
</member>
<member name="M:XCode.DataAccessLayer.XTable.ToString">
<summary>已重载。</summary>
<returns></returns>
</member>
<member name="M:XCode.DataAccessLayer.XTable.Export">
<summary>导出</summary>
<returns></returns>
</member>
<member name="M:XCode.DataAccessLayer.XTable.Import(System.String)">
<summary>导入</summary>
<param name="xml"></param>
<returns></returns>
</member>
<member name="M:XCode.DataAccessLayer.XTable.System#ICloneable#Clone">
<summary>克隆</summary>
<returns></returns>
</member>
<member name="M:XCode.DataAccessLayer.XTable.Clone">
<summary>克隆</summary>
<returns></returns>
</member>
<member name="M:XCode.DataAccessLayer.XTable.System#Xml#Serialization#IXmlSerializable#GetSchema">
<summary>获取架构</summary>
<returns></returns>
</member>
<member name="M:XCode.DataAccessLayer.XTable.System#Xml#Serialization#IXmlSerializable#ReadXml(System.Xml.XmlReader)">
<summary>读取</summary>
<param name="reader"></param>
</member>
<member name="M:XCode.DataAccessLayer.XTable.System#Xml#Serialization#IXmlSerializable#WriteXml(System.Xml.XmlWriter)">
<summary>写入</summary>
<param name="writer"></param>
</member>
<member name="T:XCode.EntityExtend">
<summary>实体扩展</summary>
</member>
<member name="P:XCode.EntityExtend.Expire">
<summary>过期时间。单位是秒</summary>
</member>
<member name="M:XCode.EntityExtend.#ctor">
<summary>实例化一个不区分键大小写的实体扩展</summary>
</member>
<member name="P:XCode.EntityExtend.Item(System.String)">
<summary>重写索引器。取值时如果没有该项则返回默认值;赋值时如果已存在该项则覆盖,否则添加。</summary>
<param name="key"></param>
<returns></returns>
</member>
<member name="M:XCode.EntityExtend.Get``1(System.String,System.Func{System.String,``0})">
<summary>扩展获取数据项,当数据项不存在时,通过调用委托获取数据项。线程安全。</summary>
<param name="key">键</param>
<param name="func">获取值的委托,该委托以键作为参数</param>
<returns></returns>
</member>
<member name="M:XCode.EntityExtend.Set(System.String,System.Object)">
<summary>设置扩展属性项</summary>
<param name="key"></param>
<param name="value"></param>
<returns></returns>
</member>
<member name="M:XCode.EntityExtend.ContainsKey(System.String)">
<summary>是否已存在</summary>
<param name="key"></param>
<returns></returns>
</member>
<member name="M:XCode.EntityExtend.CopyTo(XCode.EntityExtend)">
<summary>赋值到目标缓存</summary>
<param name="target"></param>
</member>
<member name="T:XCode.EntityExtend.CacheItem">
<summary>缓存项</summary>
</member>
<member name="P:XCode.EntityExtend.CacheItem.Value">
<summary>数值</summary>
</member>
<member name="P:XCode.EntityExtend.CacheItem.ExpiredTime">
<summary>过期时间</summary>
</member>
<member name="P:XCode.EntityExtend.CacheItem.Expired">
<summary>是否过期</summary>
</member>
<member name="T:XCode.EntityExtension">
<summary>实体扩展方法</summary>
</member>
<member name="M:XCode.EntityExtension.Find``1(System.Collections.Generic.IList{``0},System.String,System.Object)">
<summary>根据指定项查找</summary>
<param name="list">实体列表</param>
<param name="name">属性名</param>
<param name="value">属性值</param>
<returns></returns>
</member>
<member name="M:XCode.EntityExtension.FindIgnoreCase``1(System.Collections.Generic.IList{``0},System.String,System.String)">
<summary>根据指定项查找</summary>
<param name="list">实体列表</param>
<param name="name">属性名</param>
<param name="value">属性值</param>
<returns></returns>
</member>
<member name="M:XCode.EntityExtension.FindAll``1(System.Collections.Generic.IList{``0},System.String,System.Object)">
<summary>根据指定项查找</summary>
<param name="list">实体列表</param>
<param name="name">属性名</param>
<param name="value">属性值</param>
<returns></returns>
</member>
<member name="M:XCode.EntityExtension.FindAllIgnoreCase``1(System.Collections.Generic.IList{``0},System.String,System.String)">
<summary>根据指定项查找</summary>
<param name="list">实体列表</param>
<param name="name">属性名</param>
<param name="value">属性值</param>
<returns></returns>
</member>
<member name="M:XCode.EntityExtension.Exists``1(System.Collections.Generic.IList{``0},System.String,System.Object)">
<summary>集合是否包含指定项</summary>
<param name="list">实体列表</param>
<param name="name">名称</param>
<param name="value">数值</param>
<returns></returns>
</member>
<member name="M:XCode.EntityExtension.ToDictionary``1(System.Collections.Generic.IEnumerable{``0},System.String)">
<summary>实体列表转为字典。主键为Key</summary>
<param name="list">实体列表</param>
<param name="valueField">作为Value部分的字段,默认为空表示整个实体对象为值</param>
<returns></returns>
</member>
<member name="M:XCode.EntityExtension.CreateParameter``1(``0)">
<summary>从实体对象创建参数</summary>
<typeparam name="T"></typeparam>
<param name="entity">实体对象</param>
<returns></returns>
</member>
<member name="M:XCode.EntityExtension.CreateParameters``1(System.Collections.Generic.IEnumerable{``0})">
<summary>从实体列表创建参数</summary>
<param name="list">实体列表</param>
<returns></returns>
</member>
<member name="M:XCode.EntityExtension.Insert``1(System.Collections.Generic.IEnumerable{``0},System.Nullable{System.Boolean})">
<summary>把整个集合插入到数据库</summary>
<param name="list">实体列表</param>
<param name="useTransition">是否使用事务保护</param>
<returns></returns>
</member>
<member name="M:XCode.EntityExtension.Update``1(System.Collections.Generic.IEnumerable{``0},System.Nullable{System.Boolean})">
<summary>把整个集合更新到数据库</summary>
<param name="list">实体列表</param>
<param name="useTransition">是否使用事务保护</param>
<returns></returns>
</member>
<member name="M:XCode.EntityExtension.Save``1(System.Collections.Generic.IEnumerable{``0},System.Nullable{System.Boolean})">
<summary>把整个保存更新到数据库</summary>
<param name="list">实体列表</param>
<param name="useTransition">是否使用事务保护</param>
<returns></returns>
</member>
<member name="M:XCode.EntityExtension.SaveWithoutValid``1(System.Collections.Generic.IEnumerable{``0},System.Nullable{System.Boolean})">
<summary>把整个保存更新到数据库,保存时不需要验证</summary>
<param name="list">实体列表</param>
<param name="useTransition">是否使用事务保护</param>
<returns></returns>
</member>
<member name="M:XCode.EntityExtension.Delete``1(System.Collections.Generic.IEnumerable{``0},System.Nullable{System.Boolean})">
<summary>把整个集合从数据库中删除</summary>
<param name="list">实体列表</param>
<param name="useTransition">是否使用事务保护</param>
<returns></returns>
</member>
<member name="T:XCode.EntityQueue">
<summary>实体队列</summary>
</member>
<member name="P:XCode.EntityQueue.Entities">
<summary>需要近实时保存的实体队列</summary>
</member>
<member name="P:XCode.EntityQueue.DelayEntities">
<summary>需要延迟保存的实体队列</summary>
</member>
<member name="P:XCode.EntityQueue.Debug">
<summary>调试开关,默认false</summary>
</member>
<member name="P:XCode.EntityQueue.Session">
<summary>数据访问</summary>
</member>
<member name="P:XCode.EntityQueue.Period">
<summary>周期。默认1000毫秒,根据繁忙程度动态调节,尽量靠近每次持久化1000个对象</summary>
</member>
<member name="P:XCode.EntityQueue.MaxEntity">
<summary>最大个数,超过该个数时,进入队列将产生堵塞。默认10000</summary>
</member>
<member name="P:XCode.EntityQueue.Speed">
<summary>保存速度,每秒保存多少个实体</summary>
</member>
<member name="E:XCode.EntityQueue.Error">
<summary>错误发生时</summary>
</member>
<member name="M:XCode.EntityQueue.#ctor(XCode.IEntitySession)">
<summary>实例化实体队列</summary>
</member>
<member name="M:XCode.EntityQueue.Add(XCode.IEntity,System.Int32)">
<summary>添加实体对象进入队列</summary>
<param name="entity">实体对象</param>
<param name="msDelay">延迟保存的时间</param>
<returns>返回是否添加成功,实体对象已存在于队列中则返回false</returns>
</member>
<member name="F:XCode.EntityQueue._count">
<summary>当前缓存个数</summary>
</member>
<member name="T:XCode.EntitySplit">
<summary>实体分表分库</summary>
</member>
<member name="M:XCode.EntitySplit.Split``1(XCode.IEntityOperate,System.String,System.String,System.Func{``0})">
<summary>在分库上执行操作,自动还原</summary>
<param name="factory"></param>
<param name="connName"></param>
<param name="tableName"></param>
<param name="func"></param>
<returns></returns>
</member>
<member name="P:XCode.EntitySplit.SplitPackge.Factory">
<summary>实体工厂</summary>
</member>
<member name="P:XCode.EntitySplit.SplitPackge.ConnName">
<summary>连接名</summary>
</member>
<member name="P:XCode.EntitySplit.SplitPackge.TableName">
<summary>表名</summary>
</member>
<member name="T:XCode.IEntityAddition">
<summary>实体累加接口。实现Count=Count+123的效果</summary>
</member>
<member name="P:XCode.IEntityAddition.Entity">
<summary>实体对象</summary>
</member>
<member name="M:XCode.IEntityAddition.Set(System.Collections.Generic.IEnumerable{System.String})">
<summary>设置累加字段</summary>
<param name="names">字段集合</param>
</member>
<member name="M:XCode.IEntityAddition.Get">
<summary>获取快照</summary>
<returns></returns>
</member>
<member name="M:XCode.IEntityAddition.Reset(System.Collections.Generic.IDictionary{System.String,System.Object[]})">
<summary>使用快照重置</summary>
<param name="value"></param>
</member>
<member name="T:XCode.EntityAddition">
<summary>实体累加接口。实现Count+=1的效果</summary>
</member>
<member name="P:XCode.EntityAddition.Entity">
<summary>实体对象</summary>
</member>
<member name="M:XCode.EntityAddition.Set(System.Collections.Generic.IEnumerable{System.String})">
<summary>设置累加字段</summary>
<param name="names">字段集合</param>
</member>
<member name="T:XCode.EntitySession`1">
<summary>实体会话。每个实体类、连接名和表名形成一个实体会话</summary>
</member>
<member name="P:XCode.EntitySession`1.ConnName">
<summary>连接名</summary>
</member>
<member name="P:XCode.EntitySession`1.TableName">
<summary>表名</summary>
</member>
<member name="P:XCode.EntitySession`1.Key">
<summary>用于标识会话的键值</summary>
</member>
<member name="M:XCode.EntitySession`1.Create(System.String,System.String)">
<summary>创建指定表名连接名的会话</summary>
<param name="connName"></param>
<param name="tableName"></param>
<returns></returns>
</member>
<member name="P:XCode.EntitySession`1.Table">
<summary>表信息</summary>
</member>
<member name="P:XCode.EntitySession`1.Dal">
<summary>数据操作层</summary>
</member>
<member name="P:XCode.EntitySession`1.FormatedTableName">
<summary>已格式化的表名,带有中括号等</summary>
</member>
<member name="P:XCode.EntitySession`1.TableNameWithPrefix">
<summary>带前缀的表名</summary>
</member>
<member name="P:XCode.EntitySession`1.Default">
<summary>该实体类的默认会话。</summary>
</member>
<member name="P:XCode.EntitySession`1.Items">
<summary>用户数据</summary>
</member>
<member name="F:XCode.EntitySession`1.hasCheckInitData">
<summary>记录已进行数据初始化</summary>
</member>
<member name="M:XCode.EntitySession`1.WaitForInitData(System.Int32)">
<summary>检查并初始化数据。参数等待时间为0表示不等待</summary>
<param name="ms">等待时间,-1表示不限,0表示不等待</param>
<returns>如果等待,返回是否收到信号</returns>
</member>
<member name="M:XCode.EntitySession`1.CheckModel">
<summary>检查模型。依据反向工程设置、是否首次使用检查、是否已常规检查等</summary>
</member>
<member name="P:XCode.EntitySession`1.Cache">
<summary>实体缓存</summary>
<returns></returns>
</member>
<member name="P:XCode.EntitySession`1.SingleCache">
<summary>单对象实体缓存。</summary>
</member>
<member name="P:XCode.EntitySession`1.Count">
<summary>总记录数,小于1000时是精确的,大于1000时缓存10秒</summary>
</member>
<member name="F:XCode.EntitySession`1._Count">
<summary>总记录数较小时,使用静态字段,较大时增加使用Cache</summary>
</member>
<member name="P:XCode.EntitySession`1.LongCount">
<summary>总记录数,小于1000时是精确的,大于1000时缓存10分钟</summary>
<remarks>
1,检查静态字段,如果有数据且小于1000,直接返回,否则=>3
2,如果有数据但大于1000,则返回缓存里面的有效数据
3,来到这里,有可能是第一次访问,静态字段没有缓存,也有可能是大于1000的缓存过期
4,检查模型
5,根据需要查询数据
6,如果大于1000,缓存数据
7,检查数据初始化
</remarks>
</member>
<member name="M:XCode.EntitySession`1.ClearCache(System.String)">
<summary>清除缓存</summary>
<param name="reason">原因</param>
</member>
<member name="M:XCode.EntitySession`1.Query(XCode.DataAccessLayer.SelectBuilder,System.Int64,System.Int64)">
<summary>执行SQL查询,返回记录集</summary>
<param name="builder">SQL语句</param>
<param name="startRowIndex">开始行,0表示第一行</param>
<param name="maximumRows">最大返回行数,0表示所有行</param>
<returns></returns>
</member>
<member name="M:XCode.EntitySession`1.Query(System.String)">
<summary>执行SQL查询,返回记录集</summary>
<param name="sql">SQL语句</param>
<returns></returns>
</member>
<member name="M:XCode.EntitySession`1.QueryCount(XCode.DataAccessLayer.SelectBuilder)">
<summary>查询记录数</summary>
<param name="builder">查询生成器</param>
<returns>记录数</returns>
</member>
<member name="M:XCode.EntitySession`1.QueryCount(System.String)">
<summary>查询记录数</summary>
<param name="sql">SQL语句</param>
<returns></returns>
</member>
<member name="M:XCode.EntitySession`1.Execute(System.String,System.Data.CommandType,System.Data.IDataParameter[])">
<summary>执行</summary>
<param name="sql">SQL语句</param>
<param name="type">命令类型,默认SQL文本</param>
<param name="ps">命令参数</param>
<returns>影响的结果</returns>
</member>
<member name="M:XCode.EntitySession`1.InsertAndGetIdentity(System.String,System.Data.CommandType,System.Data.IDataParameter[])">
<summary>执行插入语句并返回新增行的自动编号</summary>
<param name="sql">SQL语句</param>
<param name="type">命令类型,默认SQL文本</param>
<param name="ps">命令参数</param>
<returns>新增行的自动编号</returns>
</member>
<member name="E:XCode.EntitySession`1.OnDataChange">
<summary>数据改变后触发。参数指定触发该事件的实体类</summary>
</member>
<member name="M:XCode.EntitySession`1.Truncate">
<summary>清空数据表,标识归零</summary>
<returns></returns>
</member>
<member name="M:XCode.EntitySession`1.BeginTrans">
<summary>开始事务</summary>
<returns>剩下的事务计数</returns>
</member>
<member name="M:XCode.EntitySession`1.Commit">
<summary>提交事务</summary>
<returns>剩下的事务计数</returns>
</member>
<member name="M:XCode.EntitySession`1.Rollback">
<summary>回滚事务,忽略异常</summary>
<returns>剩下的事务计数</returns>
</member>
<member name="M:XCode.EntitySession`1.FormatParameterName(System.String)">
<summary>格式化参数名</summary>
<param name="name">名称</param>
<returns></returns>
</member>
<member name="M:XCode.EntitySession`1.Insert(XCode.IEntity)">
<summary>把该对象持久化到数据库,添加/更新实体缓存和单对象缓存,增加总计数</summary>
<param name="entity">实体对象</param>
<returns></returns>
</member>
<member name="M:XCode.EntitySession`1.Update(XCode.IEntity)">
<summary>更新数据库,同时更新实体缓存</summary>
<param name="entity">实体对象</param>
<returns></returns>
</member>
<member name="M:XCode.EntitySession`1.Delete(XCode.IEntity)">
<summary>从数据库中删除该对象,同时从实体缓存和单对象缓存中删除,扣减总数量</summary>
<param name="entity">实体对象</param>
<returns></returns>
</member>
<member name="P:XCode.EntitySession`1.Queue">
<summary>实体队列</summary>
</member>
<member name="T:XCode.IEntityModule">
<summary>实体处理模块</summary>
</member>
<member name="M:XCode.IEntityModule.Init(System.Type)">
<summary>为指定实体类初始化模块,返回是否支持</summary>
<param name="entityType"></param>
<returns></returns>
</member>
<member name="M:XCode.IEntityModule.Create(XCode.IEntity,System.Boolean)">
<summary>创建实体对象</summary>
<param name="entity"></param>
<param name="forEdit"></param>
</member>
<member name="M:XCode.IEntityModule.Valid(XCode.IEntity,System.Boolean)">
<summary>验证实体对象</summary>
<param name="entity"></param>
<param name="isNew"></param>
<returns></returns>
</member>
<member name="M:XCode.IEntityModule.Delete(XCode.IEntity)">
<summary>删除实体对象</summary>
<param name="entity"></param>
</member>
<member name="T:XCode.EntityModules">
<summary>实体模块集合</summary>
</member>
<member name="P:XCode.EntityModules.Global">
<summary></summary>
</member>
<member name="P:XCode.EntityModules.EntityType">
<summary>实体类型</summary>
</member>
<member name="P:XCode.EntityModules.Modules">
<summary>模块集合</summary>
</member>
<member name="M:XCode.EntityModules.#ctor(System.Type)">
<summary>实例化实体模块集合</summary>
<param name="entityType"></param>
</member>
<member name="M:XCode.EntityModules.Add(XCode.IEntityModule)">
<summary>添加实体模块</summary>
<param name="module"></param>
<returns></returns>
</member>
<member name="M:XCode.EntityModules.Add``1">
<summary>添加实体模块</summary>
<typeparam name="T"></typeparam>
<returns></returns>
</member>
<member name="M:XCode.EntityModules.Create(XCode.IEntity,System.Boolean)">
<summary>创建实体时执行模块</summary>
<param name="entity"></param>
<param name="forEdit"></param>
</member>
<member name="M:XCode.EntityModules.Valid(XCode.IEntity,System.Boolean)">
<summary>添加更新实体时验证</summary>
<param name="entity"></param>
<param name="isNew"></param>
<returns></returns>
</member>
<member name="M:XCode.EntityModules.Delete(XCode.IEntity)">
<summary>删除实体对象</summary>
<param name="entity"></param>
</member>
<member name="T:XCode.EntityModule">
<summary>实体模块基类</summary>
</member>
<member name="M:XCode.EntityModule.Init(System.Type)">
<summary>为指定实体类初始化模块,返回是否支持</summary>
<param name="entityType"></param>
<returns></returns>
</member>
<member name="M:XCode.EntityModule.OnInit(System.Type)">
<summary>为指定实体类初始化模块,返回是否支持</summary>
<param name="entityType"></param>
<returns></returns>
</member>
<member name="M:XCode.EntityModule.Create(XCode.IEntity,System.Boolean)">
<summary>创建实体对象</summary>
<param name="entity"></param>
<param name="forEdit"></param>
</member>
<member name="M:XCode.EntityModule.OnCreate(XCode.IEntity,System.Boolean)">
<summary>创建实体对象</summary>
<param name="entity"></param>
<param name="forEdit"></param>
</member>
<member name="M:XCode.EntityModule.Valid(XCode.IEntity,System.Boolean)">
<summary>验证实体对象</summary>
<param name="entity"></param>
<param name="isNew"></param>
<returns></returns>
</member>
<member name="M:XCode.EntityModule.OnValid(XCode.IEntity,System.Boolean)">
<summary>验证实体对象</summary>
<param name="entity"></param>
<param name="isNew"></param>
<returns></returns>
</member>
<member name="M:XCode.EntityModule.Delete(XCode.IEntity)">
<summary>删除实体对象</summary>
<param name="entity"></param>
</member>
<member name="M:XCode.EntityModule.OnDelete(XCode.IEntity)">
<summary>删除实体对象</summary>
<param name="entity"></param>
<returns></returns>
</member>
<member name="M:XCode.EntityModule.SetNoDirtyItem(System.Collections.Generic.ICollection{System.String},XCode.IEntity,System.String,System.Object)">
<summary>设置脏数据项。如果某个键存在并且数据没有脏,则设置</summary>
<param name="fieldNames"></param>
<param name="entity"></param>
<param name="name"></param>
<param name="value"></param>
<returns>返回是否成功设置了数据</returns>
</member>
<member name="M:XCode.EntityModule.GetFieldNames(System.Type)">
<summary>获取实体类的字段名。带缓存</summary>
<param name="entityType"></param>
<returns></returns>
</member>
<member name="T:XCode.IEntitySession">
<summary>实体会话接口</summary>
</member>
<member name="P:XCode.IEntitySession.ConnName">
<summary>连接名</summary>
</member>
<member name="P:XCode.IEntitySession.TableName">
<summary>表名</summary>
</member>
<member name="P:XCode.IEntitySession.Key">
<summary>用于标识会话的键值</summary>
</member>
<member name="P:XCode.IEntitySession.FormatedTableName">
<summary>已格式化的表名,带有中括号等</summary>
</member>
<member name="P:XCode.IEntitySession.Dal">
<summary>数据操作层</summary>
</member>
<member name="P:XCode.IEntitySession.Items">
<summary>用户数据</summary>
</member>
<member name="M:XCode.IEntitySession.WaitForInitData(System.Int32)">
<summary>检查并初始化数据。参数等待时间为0表示不等待</summary>
<param name="ms">等待时间,-1表示不限,0表示不等待</param>
<returns>如果等待,返回是否收到信号</returns>
</member>
<member name="P:XCode.IEntitySession.Cache">
<summary>实体缓存</summary>
<returns></returns>
</member>
<member name="P:XCode.IEntitySession.SingleCache">
<summary>单对象实体缓存。
建议自定义查询数据方法,并从二级缓存中获取实体数据,以抵消因初次填充而带来的消耗。
</summary>
</member>
<member name="P:XCode.IEntitySession.Count">
<summary>总记录数,小于1000时是精确的,大于1000时缓存10分钟</summary>
</member>
<member name="P:XCode.IEntitySession.LongCount">
<summary>总记录数,小于1000时是精确的,大于1000时缓存10分钟</summary>
<remarks>
1,检查静态字段,如果有数据且小于1000,直接返回,否则=>3
2,如果有数据但大于1000,则返回缓存里面的有效数据
3,来到这里,有可能是第一次访问,静态字段没有缓存,也有可能是大于1000的缓存过期
4,检查模型
5,根据需要查询数据
6,如果大于1000,缓存数据
7,检查数据初始化
</remarks>
</member>
<member name="M:XCode.IEntitySession.ClearCache(System.String)">
<summary>清除缓存</summary>
<param name="reason">原因</param>
</member>
<member name="M:XCode.IEntitySession.Query(XCode.DataAccessLayer.SelectBuilder,System.Int64,System.Int64)">
<summary>执行SQL查询,返回记录集</summary>
<param name="builder">SQL语句</param>
<param name="startRowIndex">开始行,0表示第一行</param>
<param name="maximumRows">最大返回行数,0表示所有行</param>
<returns></returns>
</member>
<member name="M:XCode.IEntitySession.QueryCount(XCode.DataAccessLayer.SelectBuilder)">
<summary>查询记录数</summary>
<param name="builder">查询生成器</param>
<returns>记录数</returns>
</member>
<member name="M:XCode.IEntitySession.Execute(System.String,System.Data.CommandType,System.Data.IDataParameter[])">
<summary>执行</summary>
<param name="sql">SQL语句</param>
<param name="type">命令类型,默认SQL文本</param>
<param name="ps">命令参数</param>
<returns>影响的结果</returns>
</member>
<member name="M:XCode.IEntitySession.InsertAndGetIdentity(System.String,System.Data.CommandType,System.Data.IDataParameter[])">
<summary>执行插入语句并返回新增行的自动编号</summary>
<param name="sql">SQL语句</param>
<param name="type">命令类型,默认SQL文本</param>
<param name="ps">命令参数</param>
<returns>新增行的自动编号</returns>
</member>
<member name="M:XCode.IEntitySession.Truncate">
<summary>执行Truncate语句</summary>
<returns>影响的结果</returns>
</member>
<member name="E:XCode.IEntitySession.OnDataChange">
<summary>数据改变后触发。参数指定触发该事件的实体类</summary>
</member>
<member name="M:XCode.IEntitySession.BeginTrans">
<summary>开始事务</summary>
<returns>剩下的事务计数</returns>
</member>
<member name="M:XCode.IEntitySession.Commit">
<summary>提交事务</summary>
<returns>剩下的事务计数</returns>
</member>
<member name="M:XCode.IEntitySession.Rollback">
<summary>回滚事务,忽略异常</summary>
<returns>剩下的事务计数</returns>
</member>
<member name="M:XCode.IEntitySession.FormatParameterName(System.String)">
<summary>格式化参数名</summary>
<param name="name">名称</param>
<returns></returns>
</member>
<member name="M:XCode.IEntitySession.Insert(XCode.IEntity)">
<summary>把该对象持久化到数据库,添加/更新实体缓存。</summary>
<param name="entity">实体对象</param>
<returns></returns>
</member>
<member name="M:XCode.IEntitySession.Update(XCode.IEntity)">
<summary>更新数据库,同时更新实体缓存</summary>
<param name="entity">实体对象</param>
<returns></returns>
</member>
<member name="M:XCode.IEntitySession.Delete(XCode.IEntity)">
<summary>从数据库中删除该对象,同时从实体缓存中删除</summary>
<param name="entity">实体对象</param>
<returns></returns>
</member>
<member name="T:XCode.ActionDelegatedEventHandler`1">
<summary>
表示代理给定的领域事件处理委托的领域事件处理器。
</summary>
<typeparam name="TEvent"></typeparam>
</member>
<member name="M:XCode.ActionDelegatedEventHandler`1.#ctor(System.Action{`0})">
<summary>
初始化一个新的<c>ActionDelegatedDomainEventHandler{TEvent}</c>实例。
</summary>
<param name="eventHandlerDelegate">用于当前领域事件处理器所代理的事件处理委托。</param>
</member>
<member name="M:XCode.ActionDelegatedEventHandler`1.Handle(`0)">
<summary>
处理给定的事件。
</summary>
<param name="evnt">需要处理的事件。</param>
</member>
<member name="M:XCode.ActionDelegatedEventHandler`1.Equals(System.Object)">
<summary>
获取一个<see cref="T:System.Boolean"/>值,该值表示当前对象是否与给定的类型相同的另一对象相等。
</summary>
<param name="other">需要比较的与当前对象类型相同的另一对象。</param>
<returns>如果两者相等,则返回true,否则返回false。</returns>
</member>
<member name="T:XCode.EventBus">
<summary>
事件总线
发布与订阅处理逻辑
核心功能代码
</summary>
</member>
<member name="F:XCode.EventBus.eventHandlers">
<summary>
对于事件数据的存储,目前采用内存字典
</summary>
</member>
<member name="P:XCode.EventBus.Instance">
<summary>
初始化空的事件总件
</summary>
</member>
<member name="M:XCode.EventBus.Subscribe``1(XCode.IEventHandler{``0})">
<summary>
订阅事件列表
</summary>
<param name="eventHandler"></param>
</member>
<member name="M:XCode.EventBus.Subscribe``1(System.Action{``0})">
<summary>
订阅事件实体
</summary>
<param name="eventHandlerFunc"></param>
</member>
<member name="M:XCode.EventBus.Subscribe``1(System.Collections.Generic.IEnumerable{XCode.IEventHandler{``0}})">
<summary>订阅</summary>
<typeparam name="TEvent"></typeparam>
<param name="eventHandlers"></param>
</member>
<member name="M:XCode.EventBus.Unsubscribe``1(XCode.IEventHandler{``0})">
<summary>
取消订阅事件
</summary>
<param name="eventHandler"></param>
</member>
<member name="M:XCode.EventBus.Unsubscribe``1(System.Collections.Generic.IEnumerable{XCode.IEventHandler{``0}})">
<summary>取消订阅</summary>
<typeparam name="TEvent"></typeparam>
<param name="eventHandlers"></param>
</member>
<member name="M:XCode.EventBus.Unsubscribe``1(System.Action{``0})">
<summary>取消订阅</summary>
<typeparam name="TEvent"></typeparam>
<param name="eventHandlerFunc"></param>
</member>
<member name="M:XCode.EventBus.Publish``1(``0)">
<summary>
发布事件,支持异步事件
</summary>
<typeparam name="TEvent"></typeparam>
<param name="evnt"></param>
</member>
<member name="M:XCode.EventBus.Publish``1(``0,System.Action{``0,System.Boolean,System.Exception},System.Nullable{System.TimeSpan})">
<summary>发布</summary>
<typeparam name="TEvent"></typeparam>
<param name="evnt"></param>
<param name="callback"></param>
<param name="timeout"></param>
</member>
<member name="T:XCode.HandlesAsynchronouslyAttribute">
<summary>
Represents that the event handlers applied with this attribute
will handle the events in a asynchronous process.
</summary>
<remarks>This attribute is only applicable to the message handlers and will only
be used by the message buses or message dispatchers. Applying this attribute to
other types of classes will take no effect.</remarks>
</member>
<member name="T:XCode.IEvent">
<summary>
事件实体基类
</summary>
</member>
<member name="T:XCode.IEventHandler`1">
<summary>
事件处理接口
</summary>
<typeparam name="TEvent">继承IEvent对象的事件源对象</typeparam>
</member>
<member name="M:XCode.IEventHandler`1.Handle(`0)">
<summary>
处理程序
</summary>
<param name="evt"></param>
</member>
<member name="T:XCode.SQLRunEvent">
<summary>
</summary>
</member>
<member name="P:XCode.SQLRunEvent.RunTime">
<summary>
</summary>
</member>
<member name="P:XCode.SQLRunEvent.Sql">
<summary>
</summary>
</member>
<member name="T:XCode.SqlRunEventHandler">
<summary>
</summary>
</member>
<member name="M:XCode.SqlRunEventHandler.Handle(XCode.SQLRunEvent)">
<summary>
</summary>
<param name="evt"></param>
</member>
<member name="T:XCode.EntityException">
<summary>实体异常</summary>
</member>
<member name="M:XCode.EntityException.#ctor">
<summary>初始化</summary>
</member>
<member name="M:XCode.EntityException.#ctor(System.String)">
<summary>初始化</summary>
<param name="message"></param>
</member>
<member name="M:XCode.EntityException.#ctor(System.String,System.Object[])">
<summary>初始化</summary>
<param name="format"></param>
<param name="args"></param>
</member>
<member name="M:XCode.EntityException.#ctor(System.String,System.Exception)">
<summary>初始化</summary>
<param name="message"></param>
<param name="innerException"></param>
</member>
<member name="M:XCode.EntityException.#ctor(System.Exception)">
<summary>初始化</summary>
<param name="innerException"></param>
</member>
<member name="T:XCode.Extension.MyDbCache">
<summary>数据缓存</summary>
<summary>数据缓存</summary>
</member>
<member name="M:XCode.Extension.MyDbCache.Valid(System.Boolean)">
<summary>验证数据,通过抛出异常的方式提示验证失败。</summary>
<param name="isNew">是否插入</param>
</member>
<member name="M:XCode.Extension.MyDbCache.FindByName(System.String)">
<summary>根据名称查找</summary>
<param name="name">名称</param>
<returns>实体对象</returns>
</member>
<member name="P:XCode.Extension.MyDbCache.Name">
<summary>名称</summary>
</member>
<member name="P:XCode.Extension.MyDbCache.Value">
<summary>键值</summary>
</member>
<member name="P:XCode.Extension.MyDbCache.CreateTime">
<summary>创建时间</summary>
</member>
<member name="P:XCode.Extension.MyDbCache.ExpiredTime">
<summary>过期时间</summary>
</member>
<member name="P:XCode.Extension.MyDbCache.Item(System.String)">
<summary>获取/设置 字段值</summary>
<param name="name">字段名</param>
<returns></returns>
</member>
<member name="T:XCode.Extension.MyDbCache._">
<summary>取得数据缓存字段信息的快捷方式</summary>
</member>
<member name="F:XCode.Extension.MyDbCache._.Name">
<summary>名称</summary>
</member>
<member name="F:XCode.Extension.MyDbCache._.Value">
<summary>键值</summary>
</member>
<member name="F:XCode.Extension.MyDbCache._.CreateTime">
<summary>创建时间</summary>
</member>
<member name="F:XCode.Extension.MyDbCache._.ExpiredTime">
<summary>过期时间</summary>
</member>
<member name="T:XCode.Extension.MyDbCache.__">
<summary>取得数据缓存字段名称的快捷方式</summary>
</member>
<member name="F:XCode.Extension.MyDbCache.__.Name">
<summary>名称</summary>
</member>
<member name="F:XCode.Extension.MyDbCache.__.Value">
<summary>键值</summary>
</member>
<member name="F:XCode.Extension.MyDbCache.__.CreateTime">
<summary>创建时间</summary>
</member>
<member name="F:XCode.Extension.MyDbCache.__.ExpiredTime">
<summary>过期时间</summary>
</member>
<member name="T:XCode.Extension.IMyDbCache">
<summary>数据缓存接口</summary>
</member>
<member name="P:XCode.Extension.IMyDbCache.Name">
<summary>名称</summary>
</member>
<member name="P:XCode.Extension.IMyDbCache.Value">
<summary>键值</summary>
</member>
<member name="P:XCode.Extension.IMyDbCache.CreateTime">
<summary>创建时间</summary>
</member>
<member name="P:XCode.Extension.IMyDbCache.ExpiredTime">
<summary>过期时间</summary>
</member>
<member name="P:XCode.Extension.IMyDbCache.Item(System.String)">
<summary>获取/设置 字段值</summary>
<param name="name">字段名</param>
<returns></returns>
</member>
<member name="T:XCode.Membership.LogEntity`1">
<summary>日志实体类基类</summary>
<typeparam name="TEntity"></typeparam>
</member>
<member name="M:XCode.Membership.LogEntity`1.Insert">
<summary>添加时写日志</summary>
<returns></returns>
</member>
<member name="M:XCode.Membership.LogEntity`1.Update">
<summary>修改时写日志</summary>
<returns></returns>
</member>
<member name="M:XCode.Membership.LogEntity`1.Delete">
<summary>删除时写日志</summary>
<returns></returns>
</member>
<member name="M:XCode.Membership.LogEntity`1.WriteLog(System.String,System.String)">
<summary>写日志</summary>
<param name="action">操作</param>
<param name="remark">备注</param>
</member>
<member name="T:XCode.Membership.IManageProvider">
<summary>管理提供者接口</summary>
<remarks>
管理提供者接口主要提供(或统一规范)用户提供者定位、用户查找登录等功能。
只需要一个实现IManageUser接口的用户类即可实现IManageProvider接口。
IManageProvider足够精简,使得大多数用户可以自定义实现;
也因为其简单稳定,大多数需要涉及用户与权限功能的操作,均可以直接使用该接口。
</remarks>
</member>
<member name="P:XCode.Membership.IManageProvider.Current">
<summary>当前登录用户,设为空则注销登录</summary>
</member>
<member name="M:XCode.Membership.IManageProvider.GetCurrent(System.IServiceProvider)">
<summary>获取当前用户</summary>
<param name="context"></param>
<returns></returns>
</member>
<member name="M:XCode.Membership.IManageProvider.SetCurrent(NewLife.Model.IManageUser,System.IServiceProvider)">
<summary>设置当前用户</summary>
<param name="user"></param>
<param name="context"></param>
</member>
<member name="M:XCode.Membership.IManageProvider.FindByID(System.Object)">
<summary>根据用户编号查找</summary>
<param name="userid"></param>
<returns></returns>
</member>
<member name="M:XCode.Membership.IManageProvider.FindByName(System.String)">
<summary>根据用户帐号查找</summary>
<param name="name"></param>
<returns></returns>
</member>
<member name="M:XCode.Membership.IManageProvider.Login(System.String,System.String,System.Boolean)">
<summary>登录</summary>
<param name="name"></param>
<param name="password"></param>
<param name="rememberme">是否记住密码</param>
<returns></returns>
</member>
<member name="M:XCode.Membership.IManageProvider.Logout">
<summary>注销</summary>
</member>
<member name="M:XCode.Membership.IManageProvider.Register(System.String,System.String,System.Int32,System.Boolean)">
<summary>注册用户</summary>
<param name="name">用户名</param>
<param name="password">密码</param>
<param name="roleid">角色</param>
<param name="enable">是否启用</param>
<returns></returns>
</member>
<member name="M:XCode.Membership.IManageProvider.GetService``1">
<summary>获取服务</summary>
<remarks>
其实IServiceProvider有该扩展方法,但是在FX2里面不方面使用,所以这里保留
</remarks>
<typeparam name="TService"></typeparam>
<returns></returns>
</member>
<member name="T:XCode.Membership.ManageProvider">
<summary>管理提供者</summary>
</member>
<member name="P:XCode.Membership.ManageProvider.Provider">
<summary>当前管理提供者</summary>
</member>
<member name="P:XCode.Membership.ManageProvider.User">
<summary>当前登录用户</summary>
</member>
<member name="P:XCode.Membership.ManageProvider.Menu">
<summary>菜单工厂</summary>
</member>
<member name="P:XCode.Membership.ManageProvider.CookieKey">
<summary>保存于Cookie的凭证</summary>
</member>
<member name="P:XCode.Membership.ManageProvider.SessionKey">
<summary>保存于Session的凭证</summary>
</member>
<member name="P:XCode.Membership.ManageProvider.Current">
<summary>当前用户</summary>
</member>
<member name="M:XCode.Membership.ManageProvider.GetCurrent(System.IServiceProvider)">
<summary>获取当前用户</summary>
<param name="context"></param>
<returns></returns>
</member>
<member name="M:XCode.Membership.ManageProvider.SetCurrent(NewLife.Model.IManageUser,System.IServiceProvider)">
<summary>设置当前用户</summary>
<param name="user"></param>
<param name="context"></param>
</member>
<member name="M:XCode.Membership.ManageProvider.FindByID(System.Object)">
<summary>根据用户编号查找</summary>
<param name="userid"></param>
<returns></returns>
</member>
<member name="M:XCode.Membership.ManageProvider.FindByName(System.String)">
<summary>根据用户帐号查找</summary>
<param name="name"></param>
<returns></returns>
</member>
<member name="M:XCode.Membership.ManageProvider.Login(System.String,System.String,System.Boolean)">
<summary>登录</summary>
<param name="name"></param>
<param name="password"></param>
<param name="rememberme">是否记住密码</param>
<returns></returns>
</member>
<member name="M:XCode.Membership.ManageProvider.Logout">
<summary>注销</summary>
</member>
<member name="M:XCode.Membership.ManageProvider.Register(System.String,System.String,System.Int32,System.Boolean)">
<summary>注册用户</summary>
<param name="name">用户名</param>
<param name="password">密码</param>
<param name="roleid">角色</param>
<param name="enable">是否启用。某些系统可能需要验证审核</param>
<returns></returns>
</member>
<member name="M:XCode.Membership.ManageProvider.GetService``1">
<summary>获取服务</summary>
<typeparam name="TService"></typeparam>
<returns></returns>
</member>
<member name="M:XCode.Membership.ManageProvider.GetService(System.Type)">
<summary>获取服务</summary>
<param name="serviceType"></param>
<returns></returns>
</member>
<member name="M:XCode.Membership.ManageProvider.GetFactory``1">
<summary>根据实体类接口获取实体工厂</summary>
<typeparam name="TIEntity"></typeparam>
<returns></returns>
</member>
<member name="T:XCode.Membership.ManageProvider`1">
<summary>基于User实体类的管理提供者</summary>
<typeparam name="TUser"></typeparam>
</member>
<member name="M:XCode.Membership.ManageProvider`1.FindByID(System.Object)">
<summary>根据用户编号查找</summary>
<param name="userid"></param>
<returns></returns>
</member>
<member name="M:XCode.Membership.ManageProvider`1.FindByName(System.String)">
<summary>根据用户帐号查找</summary>
<param name="name"></param>
<returns></returns>
</member>
<member name="M:XCode.Membership.ManageProvider`1.Login(System.String,System.String,System.Boolean)">
<summary>登录</summary>
<param name="name"></param>
<param name="password"></param>
<param name="rememberme">是否记住密码</param>
<returns></returns>
</member>
<member name="M:XCode.Membership.ManageProvider`1.Register(System.String,System.String,System.Int32,System.Boolean)">
<summary>注册用户</summary>
<param name="name">用户名</param>
<param name="password">密码</param>
<param name="roleid">角色</param>
<param name="enable">是否启用。某些系统可能需要验证审核</param>
<returns></returns>
</member>
<member name="T:XCode.Membership.ManagerProviderHelper">
<summary>管理提供者助手</summary>
</member>
<member name="M:XCode.Membership.ManagerProviderHelper.SetPrincipal(XCode.Membership.IManageProvider,System.IServiceProvider)">
<summary>设置当前用户</summary>
<param name="provider">提供者</param>
<param name="context">Http上下文,兼容NetCore</param>
</member>
<member name="M:XCode.Membership.ManagerProviderHelper.TryLogin(XCode.Membership.IManageProvider,System.IServiceProvider)">
<summary>尝试登录。如果Session未登录则借助Cookie</summary>
<param name="provider">提供者</param>
<param name="context">Http上下文,兼容NetCore</param>
</member>
<member name="M:XCode.Membership.ManagerProviderHelper.LoadCookie(XCode.Membership.IManageProvider,System.Boolean,System.IServiceProvider)">
<summary>从Cookie加载用户信息</summary>
<param name="provider">提供者</param>
<param name="autologin">是否自动登录</param>
<param name="context">Http上下文,兼容NetCore</param>
<returns></returns>
</member>
<member name="M:XCode.Membership.ManagerProviderHelper.SaveCookie(XCode.Membership.IManageProvider,NewLife.Model.IManageUser,System.TimeSpan,System.IServiceProvider)">
<summary>保存用户信息到Cookie</summary>
<param name="provider">提供者</param>
<param name="user">用户</param>
<param name="expire">过期时间</param>
<param name="context">Http上下文,兼容NetCore</param>
</member>
<member name="T:XCode.Membership.MenuProvider">
<summary>菜单提供者。提供菜单相关操作的功能</summary>
</member>
<member name="M:XCode.Membership.MenuProvider.WriteLog(System.Type,System.String,System.String)">
<summary>写日志</summary>
<param name="type">类型</param>
<param name="action">操作</param>
<param name="remark">备注</param>
</member>
<member name="P:XCode.Membership.MenuProvider.Enable">
<summary>是否使用日志</summary>
</member>
<member name="P:XCode.Membership.MenuProvider.Provider">
<summary>当前成员提供者</summary>
</member>
<member name="T:XCode.Membership.MenuProvider`1">
<summary>泛型菜单提供者,使用泛型菜单实体基类作为派生</summary>
<typeparam name="TMenu"></typeparam>
</member>
<member name="M:XCode.Membership.MenuProvider`1.WriteLog(System.Type,System.String,System.String)">
<summary>写日志</summary>
<param name="type">类型</param>
<param name="action">操作</param>
<param name="remark">备注</param>
</member>
<member name="T:XCode.Membership.DefaultMenuProvider">
<summary>默认菜单提供者,使用实体类<seealso cref="T:XCode.Membership.Menu"/></summary>
</member>
<member name="T:XCode.Membership.LogProvider">
<summary>日志提供者。提供业务日志输出到数据库的功能</summary>
</member>
<member name="M:XCode.Membership.LogProvider.WriteLog(System.String,System.String,System.String,System.Int32,System.String,System.String)">
<summary>写日志</summary>
<param name="category">类型</param>
<param name="action">操作</param>
<param name="remark">备注</param>
<param name="userid">用户</param>
<param name="name">名称</param>
<param name="ip">地址</param>
</member>
<member name="M:XCode.Membership.LogProvider.WriteLog(System.Type,System.String,System.String,System.Int32,System.String,System.String)">
<summary>写日志</summary>
<param name="type">类型</param>
<param name="action">操作</param>
<param name="remark">备注</param>
<param name="userid">用户</param>
<param name="name">名称</param>
<param name="ip">地址</param>
</member>
<member name="M:XCode.Membership.LogProvider.WriteLog(System.String,XCode.IEntity)">
<summary>输出实体对象日志</summary>
<param name="action"></param>
<param name="entity"></param>
</member>
<member name="P:XCode.Membership.LogProvider.Enable">
<summary>是否使用日志</summary>
</member>
<member name="M:XCode.Membership.LogProvider.AsLog(System.String)">
<summary>转为标准日志接口</summary>
<param name="category">日志分类</param>
<returns></returns>
</member>
<member name="P:XCode.Membership.LogProvider.Provider">
<summary>当前成员提供者</summary>
</member>
<member name="T:XCode.Membership.LogProvider`1">
<summary>泛型日志提供者,使用泛型日志实体基类作为派生</summary>
<typeparam name="TLog"></typeparam>
</member>
<member name="P:XCode.Membership.LogProvider`1.Provider2">
<summary>当前用户提供者</summary>
</member>
<member name="M:XCode.Membership.LogProvider`1.WriteLog(System.String,System.String,System.String,System.Int32,System.String,System.String)">
<summary>写日志</summary>
<param name="category">类型</param>
<param name="action">操作</param>
<param name="remark">备注</param>
<param name="userid">用户</param>
<param name="name">名称</param>
<param name="ip">地址</param>
</member>
<member name="T:XCode.Membership.DefaultLogProvider">
<summary>默认日志提供者,使用实体类<seealso cref="T:XCode.Membership.Log"/></summary>
</member>
<member name="T:XCode.Membership.UserModule">
<summary>用户模型</summary>
</member>
<member name="T:XCode.Membership.UserModule.__">
<summary>字段名</summary>
</member>
<member name="F:XCode.Membership.UserModule.__.CreateUserID">
<summary>创建人</summary>
</member>
<member name="F:XCode.Membership.UserModule.__.UpdateUserID">
<summary>更新人</summary>
</member>
<member name="P:XCode.Membership.UserModule.Provider">
<summary>当前用户提供者</summary>
</member>
<member name="M:XCode.Membership.UserModule.#ctor">
<summary>实例化</summary>
</member>
<member name="M:XCode.Membership.UserModule.#ctor(XCode.Membership.IManageProvider)">
<summary>实例化</summary>
<param name="provider"></param>
</member>
<member name="M:XCode.Membership.UserModule.OnInit(System.Type)">
<summary>初始化。检查是否匹配</summary>
<param name="entityType"></param>
<returns></returns>
</member>
<member name="M:XCode.Membership.UserModule.OnValid(XCode.IEntity,System.Boolean)">
<summary>验证数据,自动加上创建和更新的信息</summary>
<param name="entity"></param>
<param name="isNew"></param>
</member>
<member name="T:XCode.Membership.TimeModule">
<summary>时间模型</summary>
</member>
<member name="T:XCode.Membership.TimeModule.__">
<summary>字段名</summary>
</member>
<member name="F:XCode.Membership.TimeModule.__.CreateTime">
<summary>创建时间</summary>
</member>
<member name="F:XCode.Membership.TimeModule.__.UpdateTime">
<summary>更新时间</summary>
</member>
<member name="M:XCode.Membership.TimeModule.OnInit(System.Type)">
<summary>初始化。检查是否匹配</summary>
<param name="entityType"></param>
<returns></returns>
</member>
<member name="M:XCode.Membership.TimeModule.OnValid(XCode.IEntity,System.Boolean)">
<summary>验证数据,自动加上创建和更新的信息</summary>
<param name="entity"></param>
<param name="isNew"></param>
</member>
<member name="T:XCode.Membership.IPModule">
<summary>IP地址模型</summary>
</member>
<member name="T:XCode.Membership.IPModule.__">
<summary>字段名</summary>
</member>
<member name="F:XCode.Membership.IPModule.__.CreateIP">
<summary>创建人</summary>
</member>
<member name="F:XCode.Membership.IPModule.__.UpdateIP">
<summary>更新人</summary>
</member>
<member name="M:XCode.Membership.IPModule.OnInit(System.Type)">
<summary>初始化。检查是否匹配</summary>
<param name="entityType"></param>
<returns></returns>
</member>
<member name="M:XCode.Membership.IPModule.OnValid(XCode.IEntity,System.Boolean)">
<summary>验证数据,自动加上创建和更新的信息</summary>
<param name="entity"></param>
<param name="isNew"></param>
</member>
<member name="M:XCode.Membership.IPModule.GetIPFieldNames(System.Type)">
<summary>获取实体类的字段名。带缓存</summary>
<param name="entityType"></param>
<returns></returns>
</member>
<member name="T:XCode.Membership.Log`1">
<summary>日志</summary>
<summary>日志</summary>
</member>
<member name="P:XCode.Membership.Log`1.ID">
<summary>编号</summary>
</member>
<member name="P:XCode.Membership.Log`1.Category">
<summary>类别</summary>
</member>
<member name="P:XCode.Membership.Log`1.Action">
<summary>操作</summary>
</member>
<member name="P:XCode.Membership.Log`1.LinkID">
<summary>链接</summary>
</member>
<member name="P:XCode.Membership.Log`1.UserName">
<summary>用户名</summary>
</member>
<member name="P:XCode.Membership.Log`1.CreateUserID">
<summary>用户编号</summary>
</member>
<member name="P:XCode.Membership.Log`1.CreateIP">
<summary>IP地址</summary>
</member>
<member name="P:XCode.Membership.Log`1.CreateTime">
<summary>时间</summary>
</member>
<member name="P:XCode.Membership.Log`1.Remark">
<summary>详细信息</summary>
</member>
<member name="P:XCode.Membership.Log`1.Item(System.String)">
<summary>获取/设置 字段值</summary>
<param name="name">字段名</param>
<returns></returns>
</member>
<member name="T:XCode.Membership.Log`1._">
<summary>取得日志字段信息的快捷方式</summary>
</member>
<member name="F:XCode.Membership.Log`1._.ID">
<summary>编号</summary>
</member>
<member name="F:XCode.Membership.Log`1._.Category">
<summary>类别</summary>
</member>
<member name="F:XCode.Membership.Log`1._.Action">
<summary>操作</summary>
</member>
<member name="F:XCode.Membership.Log`1._.LinkID">
<summary>链接</summary>
</member>
<member name="F:XCode.Membership.Log`1._.UserName">
<summary>用户名</summary>
</member>
<member name="F:XCode.Membership.Log`1._.CreateUserID">
<summary>用户编号</summary>
</member>
<member name="F:XCode.Membership.Log`1._.CreateIP">
<summary>IP地址</summary>
</member>
<member name="F:XCode.Membership.Log`1._.CreateTime">
<summary>时间</summary>
</member>
<member name="F:XCode.Membership.Log`1._.Remark">
<summary>详细信息</summary>
</member>
<member name="T:XCode.Membership.Log`1.__">
<summary>取得日志字段名称的快捷方式</summary>
</member>
<member name="F:XCode.Membership.Log`1.__.ID">
<summary>编号</summary>
</member>
<member name="F:XCode.Membership.Log`1.__.Category">
<summary>类别</summary>
</member>
<member name="F:XCode.Membership.Log`1.__.Action">
<summary>操作</summary>
</member>
<member name="F:XCode.Membership.Log`1.__.LinkID">
<summary>链接</summary>
</member>
<member name="F:XCode.Membership.Log`1.__.UserName">
<summary>用户名</summary>
</member>
<member name="F:XCode.Membership.Log`1.__.CreateUserID">
<summary>用户编号</summary>
</member>
<member name="F:XCode.Membership.Log`1.__.CreateIP">
<summary>IP地址</summary>
</member>
<member name="F:XCode.Membership.Log`1.__.CreateTime">
<summary>时间</summary>
</member>
<member name="F:XCode.Membership.Log`1.__.Remark">
<summary>详细信息</summary>
</member>
<member name="M:XCode.Membership.Log`1.Valid(System.Boolean)">
<summary>已重载。记录当前管理员</summary>
<param name="isNew"></param>
</member>
<member name="M:XCode.Membership.Log`1.OnUpdate">
<summary></summary>
<returns></returns>
</member>
<member name="M:XCode.Membership.Log`1.OnDelete">
<summary></summary>
<returns></returns>
</member>
<member name="M:XCode.Membership.Log`1.Search(System.String,System.Int32,System.String,System.DateTime,System.DateTime,NewLife.Web.Pager)">
<summary>查询</summary>
<param name="key"></param>
<param name="userid"></param>
<param name="category"></param>
<param name="start"></param>
<param name="end"></param>
<param name="p"></param>
<returns></returns>
</member>
<member name="M:XCode.Membership.Log`1.FindAllCategory">
<summary>查找所有类别名</summary>
<returns></returns>
</member>
<member name="M:XCode.Membership.Log`1.FindAllCategoryName">
<summary>获取所有类别名称</summary>
<returns></returns>
</member>
<member name="M:XCode.Membership.Log`1.ToString">
<summary>已重载。</summary>
<returns></returns>
</member>
<member name="T:XCode.Membership.ILog">
<summary>日志接口</summary>
</member>
<member name="P:XCode.Membership.ILog.ID">
<summary>编号</summary>
</member>
<member name="P:XCode.Membership.ILog.Category">
<summary>类别</summary>
</member>
<member name="P:XCode.Membership.ILog.Action">
<summary>操作</summary>
</member>
<member name="P:XCode.Membership.ILog.LinkID">
<summary>链接</summary>
</member>
<member name="P:XCode.Membership.ILog.UserName">
<summary>用户名</summary>
</member>
<member name="P:XCode.Membership.ILog.CreateUserID">
<summary>用户编号</summary>
</member>
<member name="P:XCode.Membership.ILog.CreateIP">
<summary>IP地址</summary>
</member>
<member name="P:XCode.Membership.ILog.CreateTime">
<summary>时间</summary>
</member>
<member name="P:XCode.Membership.ILog.Remark">
<summary>详细信息</summary>
</member>
<member name="P:XCode.Membership.ILog.Item(System.String)">
<summary>获取/设置 字段值</summary>
<param name="name">字段名</param>
<returns></returns>
</member>
<member name="M:XCode.Membership.ILog.Save">
<summary>保存</summary>
<returns></returns>
</member>
<member name="M:XCode.Membership.ILog.SaveAsync(System.Int32)">
<summary>异步保存</summary>
<param name="msDelay">延迟保存的时间。默认0ms近实时保存</param>
<returns></returns>
</member>
<member name="T:XCode.Membership.Log">
<summary>日志</summary>
</member>
<member name="T:XCode.Membership.SexKinds">
<summary>性别</summary>
</member>
<member name="F:XCode.Membership.SexKinds.未知">
<summary>未知</summary>
</member>
<member name="F:XCode.Membership.SexKinds.男">
<summary>男</summary>
</member>
<member name="F:XCode.Membership.SexKinds.女">
<summary>女</summary>
</member>
<member name="T:XCode.Membership.UserX">
<summary>管理员</summary>
</member>
<member name="T:XCode.Membership.User`1">
<summary>管理员</summary>
<remarks>
基础实体类应该是只有一个泛型参数的,需要用到别的类型时,可以继承一个,也可以通过虚拟重载等手段让基类实现
</remarks>
<typeparam name="TEntity">管理员类型</typeparam>
<summary>用户</summary>
</member>
<member name="M:XCode.Membership.User`1.InitData">
<summary>首次连接数据库时初始化数据,仅用于实体类重载,用户不应该调用该方法</summary>
</member>
<member name="M:XCode.Membership.User`1.Valid(System.Boolean)">
<summary>验证</summary>
<param name="isNew"></param>
</member>
<member name="M:XCode.Membership.User`1.OnDelete">
<summary>删除用户</summary>
<returns></returns>
</member>
<member name="P:XCode.Membership.User`1.Current">
<summary>当前登录用户</summary>
</member>
<member name="P:XCode.Membership.User`1.FriendName">
<summary>友好名字</summary>
</member>
<member name="P:XCode.Membership.User`1.LastLoginAddress">
<summary>物理地址</summary>
</member>
<member name="M:XCode.Membership.User`1.FindByID(System.Int32)">
<summary>根据编号查找</summary>
<param name="id"></param>
<returns></returns>
</member>
<member name="M:XCode.Membership.User`1.FindByName(System.String)">
<summary>根据名称查找</summary>
<param name="name">名称</param>
<returns></returns>
</member>
<member name="M:XCode.Membership.User`1.FindByMail(System.String)">
<summary>根据邮箱地址查找</summary>
<param name="mail"></param>
<returns></returns>
</member>
<member name="M:XCode.Membership.User`1.FindByMobile(System.String)">
<summary>根据手机号码查找</summary>
<param name="mobile"></param>
<returns></returns>
</member>
<member name="M:XCode.Membership.User`1.FindByCode(System.String)">
<summary>根据唯一代码查找</summary>
<param name="code"></param>
<returns></returns>
</member>
<member name="M:XCode.Membership.User`1.Search(System.String,System.Int32,System.Nullable{System.Boolean},NewLife.Web.Pager)">
<summary>高级查询</summary>
<param name="key"></param>
<param name="roleId"></param>
<param name="isEnable"></param>
<param name="p"></param>
<returns></returns>
</member>
<member name="M:XCode.Membership.User`1.Search(System.String,System.Int32,System.Nullable{System.Boolean},System.DateTime,System.DateTime,NewLife.Web.Pager)">
<summary>高级查询</summary>
<param name="key"></param>
<param name="roleId"></param>
<param name="isEnable"></param>
<param name="start"></param>
<param name="end"></param>
<param name="p"></param>
<returns></returns>
</member>
<member name="M:XCode.Membership.User`1.Add(System.String,System.String,System.Int32,System.String)">
<summary>添加用户,如果存在则直接返回</summary>
<param name="name"></param>
<param name="pass"></param>
<param name="roleid"></param>
<param name="display"></param>
<returns></returns>
</member>
<member name="M:XCode.Membership.User`1.ToString">
<summary>已重载。显示友好名字</summary>
<returns></returns>
</member>
<member name="M:XCode.Membership.User`1.Login(System.String,System.String,System.Boolean)">
<summary>登录</summary>
<param name="username"></param>
<param name="password"></param>
<param name="rememberme">是否记住密码</param>
<returns></returns>
</member>
<member name="M:XCode.Membership.User`1.SaveLoginInfo">
<summary>保存登录信息</summary>
<returns></returns>
</member>
<member name="M:XCode.Membership.User`1.Logout">
<summary>注销</summary>
</member>
<member name="M:XCode.Membership.User`1.Register">
<summary>注册用户。第一注册用户自动抢管理员</summary>
</member>
<member name="M:XCode.Membership.User`1.DisableAdmin">
<summary>禁用默认管理员</summary>
<returns></returns>
</member>
<member name="P:XCode.Membership.User`1.Role">
<summary>角色</summary>
<remarks>扩展属性不缓存空对象,一般来说,每个管理员都有对应的角色,如果没有,可能是在初始化</remarks>
</member>
<member name="P:XCode.Membership.User`1.Roles">
<summary>角色集合</summary>
</member>
<member name="M:XCode.Membership.User`1.GetRoleIDs">
<summary>获取角色列表。主角色在前,其它角色升序在后</summary>
<returns></returns>
</member>
<member name="P:XCode.Membership.User`1.RoleName">
<summary>角色名</summary>
</member>
<member name="M:XCode.Membership.User`1.Has(XCode.Membership.IMenu,XCode.Membership.PermissionFlags[])">
<summary>用户是否拥有当前菜单的指定权限</summary>
<param name="menu">指定菜单</param>
<param name="flags">是否拥有多个权限中的任意一个,或的关系。如果需要表示与的关系,可以传入一个多权限位合并</param>
<returns></returns>
</member>
<member name="P:XCode.Membership.User`1.NewLife#Model#IManageUser#NickName">
<summary>昵称</summary>
</member>
<member name="P:XCode.Membership.User`1.ID">
<summary>编号</summary>
</member>
<member name="P:XCode.Membership.User`1.Name">
<summary>名称。登录用户名</summary>
</member>
<member name="P:XCode.Membership.User`1.Password">
<summary>密码</summary>
</member>
<member name="P:XCode.Membership.User`1.DisplayName">
<summary>昵称</summary>
</member>
<member name="P:XCode.Membership.User`1.Sex">
<summary>性别。未知、男、女</summary>
</member>
<member name="P:XCode.Membership.User`1.Mail">
<summary>邮件</summary>
</member>
<member name="P:XCode.Membership.User`1.Mobile">
<summary>手机</summary>
</member>
<member name="P:XCode.Membership.User`1.Code">
<summary>代码。身份证、员工编号等</summary>
</member>
<member name="P:XCode.Membership.User`1.Avatar">
<summary>头像</summary>
</member>
<member name="P:XCode.Membership.User`1.RoleID">
<summary>角色。主要角色</summary>
</member>
<member name="P:XCode.Membership.User`1.RoleIDs">
<summary>角色组。次要角色集合</summary>
</member>
<member name="P:XCode.Membership.User`1.Online">
<summary>在线</summary>
</member>
<member name="P:XCode.Membership.User`1.Enable">
<summary>启用</summary>
</member>
<member name="P:XCode.Membership.User`1.Logins">
<summary>登录次数</summary>
</member>
<member name="P:XCode.Membership.User`1.LastLogin">
<summary>最后登录</summary>
</member>
<member name="P:XCode.Membership.User`1.LastLoginIP">
<summary>最后登录IP</summary>
</member>
<member name="P:XCode.Membership.User`1.RegisterTime">
<summary>注册时间</summary>
</member>
<member name="P:XCode.Membership.User`1.RegisterIP">
<summary>注册IP</summary>
</member>
<member name="P:XCode.Membership.User`1.Item(System.String)">
<summary>获取/设置 字段值</summary>
<param name="name">字段名</param>
<returns></returns>
</member>
<member name="T:XCode.Membership.User`1._">
<summary>取得用户字段信息的快捷方式</summary>
</member>
<member name="F:XCode.Membership.User`1._.ID">
<summary>编号</summary>
</member>
<member name="F:XCode.Membership.User`1._.Name">
<summary>名称。登录用户名</summary>
</member>
<member name="F:XCode.Membership.User`1._.Password">
<summary>密码</summary>
</member>
<member name="F:XCode.Membership.User`1._.DisplayName">
<summary>昵称</summary>
</member>
<member name="F:XCode.Membership.User`1._.Sex">
<summary>性别。未知、男、女</summary>
</member>
<member name="F:XCode.Membership.User`1._.Mail">
<summary>邮件</summary>
</member>
<member name="F:XCode.Membership.User`1._.Mobile">
<summary>手机</summary>
</member>
<member name="F:XCode.Membership.User`1._.Code">
<summary>代码。身份证、员工编号等</summary>
</member>
<member name="F:XCode.Membership.User`1._.Avatar">
<summary>头像</summary>
</member>
<member name="F:XCode.Membership.User`1._.RoleID">
<summary>角色。主要角色</summary>
</member>
<member name="F:XCode.Membership.User`1._.RoleIDs">
<summary>角色组。次要角色集合</summary>
</member>
<member name="F:XCode.Membership.User`1._.Online">
<summary>在线</summary>
</member>
<member name="F:XCode.Membership.User`1._.Enable">
<summary>启用</summary>
</member>
<member name="F:XCode.Membership.User`1._.Logins">
<summary>登录次数</summary>
</member>
<member name="F:XCode.Membership.User`1._.LastLogin">
<summary>最后登录</summary>
</member>
<member name="F:XCode.Membership.User`1._.LastLoginIP">
<summary>最后登录IP</summary>
</member>
<member name="F:XCode.Membership.User`1._.RegisterTime">
<summary>注册时间</summary>
</member>
<member name="F:XCode.Membership.User`1._.RegisterIP">
<summary>注册IP</summary>
</member>
<member name="T:XCode.Membership.User`1.__">
<summary>取得用户字段名称的快捷方式</summary>
</member>
<member name="F:XCode.Membership.User`1.__.ID">
<summary>编号</summary>
</member>
<member name="F:XCode.Membership.User`1.__.Name">
<summary>名称。登录用户名</summary>
</member>
<member name="F:XCode.Membership.User`1.__.Password">
<summary>密码</summary>
</member>
<member name="F:XCode.Membership.User`1.__.DisplayName">
<summary>昵称</summary>
</member>
<member name="F:XCode.Membership.User`1.__.Sex">
<summary>性别。未知、男、女</summary>
</member>
<member name="F:XCode.Membership.User`1.__.Mail">
<summary>邮件</summary>
</member>
<member name="F:XCode.Membership.User`1.__.Mobile">
<summary>手机</summary>
</member>
<member name="F:XCode.Membership.User`1.__.Code">
<summary>代码。身份证、员工编号等</summary>
</member>
<member name="F:XCode.Membership.User`1.__.Avatar">
<summary>头像</summary>
</member>
<member name="F:XCode.Membership.User`1.__.RoleID">
<summary>角色。主要角色</summary>
</member>
<member name="F:XCode.Membership.User`1.__.RoleIDs">
<summary>角色组。次要角色集合</summary>
</member>
<member name="F:XCode.Membership.User`1.__.Online">
<summary>在线</summary>
</member>
<member name="F:XCode.Membership.User`1.__.Enable">
<summary>启用</summary>
</member>
<member name="F:XCode.Membership.User`1.__.Logins">
<summary>登录次数</summary>
</member>
<member name="F:XCode.Membership.User`1.__.LastLogin">
<summary>最后登录</summary>
</member>
<member name="F:XCode.Membership.User`1.__.LastLoginIP">
<summary>最后登录IP</summary>
</member>
<member name="F:XCode.Membership.User`1.__.RegisterTime">
<summary>注册时间</summary>
</member>
<member name="F:XCode.Membership.User`1.__.RegisterIP">
<summary>注册IP</summary>
</member>
<member name="T:XCode.Membership.IUser">
<summary>用户接口</summary>
</member>
<member name="P:XCode.Membership.IUser.FriendName">
<summary>友好名字</summary>
</member>
<member name="P:XCode.Membership.IUser.Role">
<summary>角色</summary>
</member>
<member name="P:XCode.Membership.IUser.Roles">
<summary>角色集合</summary>
</member>
<member name="P:XCode.Membership.IUser.RoleName">
<summary>角色名</summary>
</member>
<member name="M:XCode.Membership.IUser.Has(XCode.Membership.IMenu,XCode.Membership.PermissionFlags[])">
<summary>用户是否拥有当前菜单的指定权限</summary>
<param name="menu">指定菜单</param>
<param name="flags">是否拥有多个权限中的任意一个,或的关系。如果需要表示与的关系,可以传入一个多权限位合并</param>
<returns></returns>
</member>
<member name="M:XCode.Membership.IUser.Logout">
<summary>注销</summary>
</member>
<member name="M:XCode.Membership.IUser.Save">
<summary>保存</summary>
</member>
<member name="P:XCode.Membership.IUser.ID">
<summary>编号</summary>
</member>
<member name="P:XCode.Membership.IUser.Name">
<summary>名称。登录用户名</summary>
</member>
<member name="P:XCode.Membership.IUser.Password">
<summary>密码</summary>
</member>
<member name="P:XCode.Membership.IUser.DisplayName">
<summary>昵称</summary>
</member>
<member name="P:XCode.Membership.IUser.Sex">
<summary>性别。未知、男、女</summary>
</member>
<member name="P:XCode.Membership.IUser.Mail">
<summary>邮件</summary>
</member>
<member name="P:XCode.Membership.IUser.Mobile">
<summary>手机</summary>
</member>
<member name="P:XCode.Membership.IUser.Code">
<summary>代码。身份证、员工编号等</summary>
</member>
<member name="P:XCode.Membership.IUser.Avatar">
<summary>头像</summary>
</member>
<member name="P:XCode.Membership.IUser.RoleID">
<summary>角色。主要角色</summary>
</member>
<member name="P:XCode.Membership.IUser.RoleIDs">
<summary>角色组。次要角色集合</summary>
</member>
<member name="P:XCode.Membership.IUser.Online">
<summary>在线</summary>
</member>
<member name="P:XCode.Membership.IUser.Enable">
<summary>启用</summary>
</member>
<member name="P:XCode.Membership.IUser.Logins">
<summary>登录次数</summary>
</member>
<member name="P:XCode.Membership.IUser.LastLogin">
<summary>最后登录</summary>
</member>
<member name="P:XCode.Membership.IUser.LastLoginIP">
<summary>最后登录IP</summary>
</member>
<member name="P:XCode.Membership.IUser.RegisterTime">
<summary>注册时间</summary>
</member>
<member name="P:XCode.Membership.IUser.RegisterIP">
<summary>注册IP</summary>
</member>
<member name="P:XCode.Membership.IUser.Item(System.String)">
<summary>获取/设置 字段值</summary>
<param name="name">字段名</param>
<returns></returns>
</member>
<member name="T:XCode.Membership.UserOnline">
<summary>用户在线</summary>
<summary>用户在线</summary>
</member>
<member name="M:XCode.Membership.UserOnline.Valid(System.Boolean)">
<summary>验证数据,通过抛出异常的方式提示验证失败。</summary>
<param name="isNew"></param>
</member>
<member name="P:XCode.Membership.UserOnline.CreateAddress">
<summary>物理地址</summary>
</member>
<member name="M:XCode.Membership.UserOnline.FindByID(System.Int32)">
<summary>根据会话编号查找</summary>
<param name="id"></param>
<returns></returns>
</member>
<member name="M:XCode.Membership.UserOnline.FindBySessionID(System.String)">
<summary>根据会话编号查找</summary>
<param name="sessionid"></param>
<returns></returns>
</member>
<member name="M:XCode.Membership.UserOnline.FindAllByUserID(System.Int32)">
<summary>根据用户编号查找</summary>
<param name="userid"></param>
<returns></returns>
</member>
<member name="M:XCode.Membership.UserOnline.Search(System.Int32,System.DateTime,System.DateTime,System.String,NewLife.Data.PageParameter)">
<summary>查询满足条件的记录集,分页、排序</summary>
<param name="userid">用户编号</param>
<param name="start">开始时间</param>
<param name="end">结束时间</param>
<param name="key">关键字</param>
<param name="param">分页排序参数,同时返回满足条件的总记录数</param>
<returns>实体集</returns>
</member>
<member name="M:XCode.Membership.UserOnline.SetStatus(System.String,System.String,System.String,System.Int32,System.String,System.String)">
<summary>设置会话状态</summary>
<param name="sessionid"></param>
<param name="page"></param>
<param name="status"></param>
<param name="userid"></param>
<param name="name"></param>
<param name="ip"></param>
<returns></returns>
</member>
<member name="M:XCode.Membership.UserOnline.SetWebStatus(System.String,System.String,System.String,NewLife.Model.IManageUser,System.String)">
<summary>设置网页会话状态</summary>
<param name="sessionid"></param>
<param name="page"></param>
<param name="status"></param>
<param name="user"></param>
<param name="ip"></param>
<returns></returns>
</member>
<member name="M:XCode.Membership.UserOnline.ClearExpire(System.Int32)">
<summary>删除过期,指定过期时间</summary>
<param name="secTimeout">超时时间,20 * 60秒</param>
<returns></returns>
</member>
<member name="P:XCode.Membership.UserOnline.ID">
<summary>编号</summary>
</member>
<member name="P:XCode.Membership.UserOnline.UserID">
<summary>用户</summary>
</member>
<member name="P:XCode.Membership.UserOnline.Name">
<summary>名称</summary>
</member>
<member name="P:XCode.Membership.UserOnline.SessionID">
<summary>会话。Web的SessionID或Server的会话编号</summary>
</member>
<member name="P:XCode.Membership.UserOnline.Times">
<summary>次数</summary>
</member>
<member name="P:XCode.Membership.UserOnline.Page">
<summary>页面</summary>
</member>
<member name="P:XCode.Membership.UserOnline.Status">
<summary>状态</summary>
</member>
<member name="P:XCode.Membership.UserOnline.OnlineTime">
<summary>在线时间。本次在线总时间,秒</summary>
</member>
<member name="P:XCode.Membership.UserOnline.CreateIP">
<summary>创建地址</summary>
</member>
<member name="P:XCode.Membership.UserOnline.CreateTime">
<summary>创建时间</summary>
</member>
<member name="P:XCode.Membership.UserOnline.UpdateTime">
<summary>修改时间</summary>
</member>
<member name="P:XCode.Membership.UserOnline.Item(System.String)">
<summary>获取/设置 字段值</summary>
<param name="name">字段名</param>
<returns></returns>
</member>
<member name="T:XCode.Membership.UserOnline._">
<summary>取得用户在线字段信息的快捷方式</summary>
</member>
<member name="F:XCode.Membership.UserOnline._.ID">
<summary>编号</summary>
</member>
<member name="F:XCode.Membership.UserOnline._.UserID">
<summary>用户</summary>
</member>
<member name="F:XCode.Membership.UserOnline._.Name">
<summary>名称</summary>
</member>
<member name="F:XCode.Membership.UserOnline._.SessionID">
<summary>会话。Web的SessionID或Server的会话编号</summary>
</member>
<member name="F:XCode.Membership.UserOnline._.Times">
<summary>次数</summary>
</member>
<member name="F:XCode.Membership.UserOnline._.Page">
<summary>页面</summary>
</member>
<member name="F:XCode.Membership.UserOnline._.Status">
<summary>状态</summary>
</member>
<member name="F:XCode.Membership.UserOnline._.OnlineTime">
<summary>在线时间。本次在线总时间,秒</summary>
</member>
<member name="F:XCode.Membership.UserOnline._.CreateIP">
<summary>创建地址</summary>
</member>
<member name="F:XCode.Membership.UserOnline._.CreateTime">
<summary>创建时间</summary>
</member>
<member name="F:XCode.Membership.UserOnline._.UpdateTime">
<summary>修改时间</summary>
</member>
<member name="T:XCode.Membership.UserOnline.__">
<summary>取得用户在线字段名称的快捷方式</summary>
</member>
<member name="F:XCode.Membership.UserOnline.__.ID">
<summary>编号</summary>
</member>
<member name="F:XCode.Membership.UserOnline.__.UserID">
<summary>用户</summary>
</member>
<member name="F:XCode.Membership.UserOnline.__.Name">
<summary>名称</summary>
</member>
<member name="F:XCode.Membership.UserOnline.__.SessionID">
<summary>会话。Web的SessionID或Server的会话编号</summary>
</member>
<member name="F:XCode.Membership.UserOnline.__.Times">
<summary>次数</summary>
</member>
<member name="F:XCode.Membership.UserOnline.__.Page">
<summary>页面</summary>
</member>
<member name="F:XCode.Membership.UserOnline.__.Status">
<summary>状态</summary>
</member>
<member name="F:XCode.Membership.UserOnline.__.OnlineTime">
<summary>在线时间。本次在线总时间,秒</summary>
</member>
<member name="F:XCode.Membership.UserOnline.__.CreateIP">
<summary>创建地址</summary>
</member>
<member name="F:XCode.Membership.UserOnline.__.CreateTime">
<summary>创建时间</summary>
</member>
<member name="F:XCode.Membership.UserOnline.__.UpdateTime">
<summary>修改时间</summary>
</member>
<member name="T:XCode.Membership.IUserOnline">
<summary>用户在线接口</summary>
</member>
<member name="P:XCode.Membership.IUserOnline.ID">
<summary>编号</summary>
</member>
<member name="P:XCode.Membership.IUserOnline.UserID">
<summary>用户</summary>
</member>
<member name="P:XCode.Membership.IUserOnline.Name">
<summary>名称</summary>
</member>
<member name="P:XCode.Membership.IUserOnline.SessionID">
<summary>会话。Web的SessionID或Server的会话编号</summary>
</member>
<member name="P:XCode.Membership.IUserOnline.Times">
<summary>次数</summary>
</member>
<member name="P:XCode.Membership.IUserOnline.Page">
<summary>页面</summary>
</member>
<member name="P:XCode.Membership.IUserOnline.Status">
<summary>状态</summary>
</member>
<member name="P:XCode.Membership.IUserOnline.OnlineTime">
<summary>在线时间。本次在线总时间,秒</summary>
</member>
<member name="P:XCode.Membership.IUserOnline.CreateIP">
<summary>创建地址</summary>
</member>
<member name="P:XCode.Membership.IUserOnline.CreateTime">
<summary>创建时间</summary>
</member>
<member name="P:XCode.Membership.IUserOnline.UpdateTime">
<summary>修改时间</summary>
</member>
<member name="P:XCode.Membership.IUserOnline.Item(System.String)">
<summary>获取/设置 字段值</summary>
<param name="name">字段名</param>
<returns></returns>
</member>
<member name="T:XCode.Membership.Menu">
<summary>菜单</summary>
</member>
<member name="T:XCode.Membership.Menu`1">
<summary>菜单</summary>
<summary>菜单</summary>
</member>
<member name="M:XCode.Membership.Menu`1.Valid(System.Boolean)">
<summary>验证数据,通过抛出异常的方式提示验证失败。</summary>
<param name="isNew">是否新数据</param>
</member>
<member name="M:XCode.Membership.Menu`1.Save">
<summary>已重载。调用Save时写日志,而调用Insert和Update时不写日志</summary>
<returns></returns>
</member>
<member name="M:XCode.Membership.Menu`1.OnDelete">
<summary>删除。</summary>
<returns></returns>
</member>
<member name="M:XCode.Membership.Menu`1.OnLoad">
<summary>加载权限字典</summary>
</member>
<member name="M:XCode.Membership.Menu`1.OnPropertyChanged(System.String)">
<summary>如果Permission被修改,则重新加载</summary>
<param name="fieldName"></param>
</member>
<member name="P:XCode.Membership.Menu`1.Url2">
<summary></summary>
</member>
<member name="P:XCode.Membership.Menu`1.ParentMenuName">
<summary>父菜单名</summary>
</member>
<member name="P:XCode.Membership.Menu`1.Necessaries">
<summary>必要的菜单。必须至少有角色拥有这些权限,如果没有则自动授权给系统角色</summary>
</member>
<member name="P:XCode.Membership.Menu`1.FriendName">
<summary>友好名称。优先显示名</summary>
</member>
<member name="M:XCode.Membership.Menu`1.FindByID(System.Int32)">
<summary>根据编号查找</summary>
<param name="id"></param>
<returns></returns>
</member>
<member name="M:XCode.Membership.Menu`1.FindByName(System.String)">
<summary>根据名字查找</summary>
<param name="name">名称</param>
<returns></returns>
</member>
<member name="M:XCode.Membership.Menu`1.FindByFullName(System.String)">
<summary>根据全名查找</summary>
<param name="name">全名</param>
<returns></returns>
</member>
<member name="M:XCode.Membership.Menu`1.FindByUrl(System.String)">
<summary>根据Url查找</summary>
<param name="url"></param>
<returns></returns>
</member>
<member name="M:XCode.Membership.Menu`1.FindForName(System.String)">
<summary>根据名字查找,支持路径查找</summary>
<param name="name">名称</param>
<returns></returns>
</member>
<member name="M:XCode.Membership.Menu`1.FindAllByParentID(System.Int32)">
<summary>查找指定菜单的子菜单</summary>
<param name="id"></param>
<returns></returns>
</member>
<member name="M:XCode.Membership.Menu`1.GetSubMenus(System.Int32[])">
<summary>取得当前角色的子菜单,有权限、可显示、排序</summary>
<param name="filters"></param>
<returns></returns>
</member>
<member name="M:XCode.Membership.Menu`1.Add(System.String,System.String,System.String,System.String)">
<summary>添加子菜单</summary>
<param name="name"></param>
<param name="displayName"></param>
<param name="fullName"></param>
<param name="url"></param>
<returns></returns>
</member>
<member name="P:XCode.Membership.Menu`1.Permissions">
<summary>可选权限子项</summary>
</member>
<member name="M:XCode.Membership.Menu`1.WriteLog(System.String,System.String)">
<summary>写日志</summary>
<param name="action">操作</param>
<param name="remark">备注</param>
</member>
<member name="M:XCode.Membership.Menu`1.ToString">
<summary>已重载。</summary>
<returns></returns>
</member>
<member name="M:XCode.Membership.Menu`1.XCode#Membership#IMenu#GetFullPath(System.Boolean,System.String,System.Func{XCode.Membership.IMenu,System.String})">
<summary>取得全路径的实体,由上向下排序</summary>
<param name="includeSelf">是否包含自己</param>
<param name="separator">分隔符</param>
<param name="func">回调</param>
<returns></returns>
</member>
<member name="P:XCode.Membership.Menu`1.XCode#Membership#IMenu#Parent">
<summary>父菜单</summary>
</member>
<member name="P:XCode.Membership.Menu`1.XCode#Membership#IMenu#Childs">
<summary>子菜单</summary>
</member>
<member name="P:XCode.Membership.Menu`1.XCode#Membership#IMenu#AllChilds">
<summary>子孙菜单</summary>
</member>
<member name="M:XCode.Membership.Menu`1.XCode#Membership#IMenu#FindByPath(System.String)">
<summary>根据层次路径查找</summary>
<param name="path">层次路径</param>
<returns></returns>
</member>
<member name="T:XCode.Membership.Menu`1.MenuFactory">
<summary>菜单工厂</summary>
</member>
<member name="P:XCode.Membership.Menu`1.MenuFactory.XCode#Membership#IMenuFactory#Current">
<summary>当前请求所在菜单。自动根据当前请求的文件路径定位</summary>
</member>
<member name="M:XCode.Membership.Menu`1.MenuFactory.XCode#Membership#IMenuFactory#FindByID(System.Int32)">
<summary>根据编号找到菜单</summary>
<param name="id"></param>
<returns></returns>
</member>
<member name="M:XCode.Membership.Menu`1.MenuFactory.XCode#Membership#IMenuFactory#FindByUrl(System.String)">
<summary>根据Url找到菜单</summary>
<param name="url"></param>
<returns></returns>
</member>
<member name="M:XCode.Membership.Menu`1.MenuFactory.XCode#Membership#IMenuFactory#FindByFullName(System.String)">
<summary>根据全名找到菜单</summary>
<param name="fullName"></param>
<returns></returns>
</member>
<member name="M:XCode.Membership.Menu`1.MenuFactory.XCode#Membership#IMenuFactory#GetMySubMenus(System.Int32,XCode.Membership.IUser)">
<summary>获取指定菜单下,当前用户有权访问的子菜单。</summary>
<param name="menuid"></param>
<param name="user"></param>
<returns></returns>
</member>
<member name="M:XCode.Membership.Menu`1.MenuFactory.ScanController(System.String,System.Reflection.Assembly,System.String)">
<summary>扫描命名空间下的控制器并添加为菜单</summary>
<param name="rootName">根菜单名称,所有菜单附属在其下</param>
<param name="asm">要扫描的程序集</param>
<param name="nameSpace">要扫描的命名空间</param>
<returns></returns>
</member>
<member name="P:XCode.Membership.Menu`1.ID">
<summary>编号</summary>
</member>
<member name="P:XCode.Membership.Menu`1.Name">
<summary>名称</summary>
</member>
<member name="P:XCode.Membership.Menu`1.DisplayName">
<summary>显示名</summary>
</member>
<member name="P:XCode.Membership.Menu`1.FullName">
<summary>全名</summary>
</member>
<member name="P:XCode.Membership.Menu`1.ParentID">
<summary>父编号</summary>
</member>
<member name="P:XCode.Membership.Menu`1.Url">
<summary>链接</summary>
</member>
<member name="P:XCode.Membership.Menu`1.Sort">
<summary>排序</summary>
</member>
<member name="P:XCode.Membership.Menu`1.Icon">
<summary>图标</summary>
</member>
<member name="P:XCode.Membership.Menu`1.Visible">
<summary>可见</summary>
</member>
<member name="P:XCode.Membership.Menu`1.Necessary">
<summary>必要。必要的菜单,必须至少有角色拥有这些权限,如果没有则自动授权给系统角色</summary>
</member>
<member name="P:XCode.Membership.Menu`1.Permission">
<summary>权限子项。逗号分隔,每个权限子项名值竖线分隔</summary>
</member>
<member name="P:XCode.Membership.Menu`1.Remark">
<summary>备注</summary>
</member>
<member name="P:XCode.Membership.Menu`1.Item(System.String)">
<summary>获取/设置 字段值</summary>
<param name="name">字段名</param>
<returns></returns>
</member>
<member name="T:XCode.Membership.Menu`1._">
<summary>取得菜单字段信息的快捷方式</summary>
</member>
<member name="F:XCode.Membership.Menu`1._.ID">
<summary>编号</summary>
</member>
<member name="F:XCode.Membership.Menu`1._.Name">
<summary>名称</summary>
</member>
<member name="F:XCode.Membership.Menu`1._.DisplayName">
<summary>显示名</summary>
</member>
<member name="F:XCode.Membership.Menu`1._.FullName">
<summary>全名</summary>
</member>
<member name="F:XCode.Membership.Menu`1._.ParentID">
<summary>父编号</summary>
</member>
<member name="F:XCode.Membership.Menu`1._.Url">
<summary>链接</summary>
</member>
<member name="F:XCode.Membership.Menu`1._.Sort">
<summary>排序</summary>
</member>
<member name="F:XCode.Membership.Menu`1._.Icon">
<summary>图标</summary>
</member>
<member name="F:XCode.Membership.Menu`1._.Visible">
<summary>可见</summary>
</member>
<member name="F:XCode.Membership.Menu`1._.Necessary">
<summary>必要。必要的菜单,必须至少有角色拥有这些权限,如果没有则自动授权给系统角色</summary>
</member>
<member name="F:XCode.Membership.Menu`1._.Permission">
<summary>权限子项。逗号分隔,每个权限子项名值竖线分隔</summary>
</member>
<member name="F:XCode.Membership.Menu`1._.Remark">
<summary>备注</summary>
</member>
<member name="T:XCode.Membership.Menu`1.__">
<summary>取得菜单字段名称的快捷方式</summary>
</member>
<member name="F:XCode.Membership.Menu`1.__.ID">
<summary>编号</summary>
</member>
<member name="F:XCode.Membership.Menu`1.__.Name">
<summary>名称</summary>
</member>
<member name="F:XCode.Membership.Menu`1.__.DisplayName">
<summary>显示名</summary>
</member>
<member name="F:XCode.Membership.Menu`1.__.FullName">
<summary>全名</summary>
</member>
<member name="F:XCode.Membership.Menu`1.__.ParentID">
<summary>父编号</summary>
</member>
<member name="F:XCode.Membership.Menu`1.__.Url">
<summary>链接</summary>
</member>
<member name="F:XCode.Membership.Menu`1.__.Sort">
<summary>排序</summary>
</member>
<member name="F:XCode.Membership.Menu`1.__.Icon">
<summary>图标</summary>
</member>
<member name="F:XCode.Membership.Menu`1.__.Visible">
<summary>可见</summary>
</member>
<member name="F:XCode.Membership.Menu`1.__.Necessary">
<summary>必要。必要的菜单,必须至少有角色拥有这些权限,如果没有则自动授权给系统角色</summary>
</member>
<member name="F:XCode.Membership.Menu`1.__.Permission">
<summary>权限子项。逗号分隔,每个权限子项名值竖线分隔</summary>
</member>
<member name="F:XCode.Membership.Menu`1.__.Remark">
<summary>备注</summary>
</member>
<member name="T:XCode.Membership.IMenuFactory">
<summary>菜单工厂接口</summary>
</member>
<member name="P:XCode.Membership.IMenuFactory.Root">
<summary>根菜单</summary>
</member>
<member name="P:XCode.Membership.IMenuFactory.Current">
<summary>当前请求所在菜单。自动根据当前请求的文件路径定位</summary>
</member>
<member name="M:XCode.Membership.IMenuFactory.FindByID(System.Int32)">
<summary>根据编号找到菜单</summary>
<param name="id"></param>
<returns></returns>
</member>
<member name="M:XCode.Membership.IMenuFactory.FindByFullName(System.String)">
<summary>根据全名找到菜单</summary>
<param name="fullName"></param>
<returns></returns>
</member>
<member name="M:XCode.Membership.IMenuFactory.FindByUrl(System.String)">
<summary>根据Url找到菜单</summary>
<param name="url"></param>
<returns></returns>
</member>
<member name="M:XCode.Membership.IMenuFactory.GetMySubMenus(System.Int32,XCode.Membership.IUser)">
<summary>获取指定菜单下,当前用户有权访问的子菜单。</summary>
<param name="menuid"></param>
<param name="user"></param>
<returns></returns>
</member>
<member name="M:XCode.Membership.IMenuFactory.ScanController(System.String,System.Reflection.Assembly,System.String)">
<summary>扫描命名空间下的控制器并添加为菜单</summary>
<param name="rootName"></param>
<param name="asm"></param>
<param name="nameSpace"></param>
<returns></returns>
</member>
<member name="T:XCode.Membership.IMenu">
<summary>菜单接口</summary>
</member>
<member name="M:XCode.Membership.IMenu.GetFullPath(System.Boolean,System.String,System.Func{XCode.Membership.IMenu,System.String})">
<summary>取得全路径的实体,由上向下排序</summary>
<param name="includeSelf">是否包含自己</param>
<param name="separator">分隔符</param>
<param name="func">回调</param>
<returns></returns>
</member>
<member name="M:XCode.Membership.IMenu.Add(System.String,System.String,System.String,System.String)">
<summary>添加子菜单</summary>
<param name="name"></param>
<param name="displayName"></param>
<param name="fullName"></param>
<param name="url"></param>
<returns></returns>
</member>
<member name="P:XCode.Membership.IMenu.Parent">
<summary>父菜单</summary>
</member>
<member name="P:XCode.Membership.IMenu.Childs">
<summary>子菜单</summary>
</member>
<member name="P:XCode.Membership.IMenu.AllChilds">
<summary>子孙菜单</summary>
</member>
<member name="M:XCode.Membership.IMenu.FindByPath(System.String)">
<summary>根据层次路径查找。因为需要指定在某个菜单子级查找路径,所以是成员方法而不是静态方法</summary>
<param name="path">层次路径</param>
<returns></returns>
</member>
<member name="M:XCode.Membership.IMenu.Up">
<summary>排序上升</summary>
</member>
<member name="M:XCode.Membership.IMenu.Down">
<summary>排序下降</summary>
</member>
<member name="M:XCode.Membership.IMenu.GetSubMenus(System.Int32[])">
<summary></summary>
<param name="filters"></param>
<returns></returns>
</member>
<member name="P:XCode.Membership.IMenu.Permissions">
<summary>可选权限子项</summary>
</member>
<member name="P:XCode.Membership.IMenu.ID">
<summary>编号</summary>
</member>
<member name="P:XCode.Membership.IMenu.Name">
<summary>名称</summary>
</member>
<member name="P:XCode.Membership.IMenu.DisplayName">
<summary>显示名</summary>
</member>
<member name="P:XCode.Membership.IMenu.FullName">
<summary>全名</summary>
</member>
<member name="P:XCode.Membership.IMenu.ParentID">
<summary>父编号</summary>
</member>
<member name="P:XCode.Membership.IMenu.Url">
<summary>链接</summary>
</member>
<member name="P:XCode.Membership.IMenu.Sort">
<summary>排序</summary>
</member>
<member name="P:XCode.Membership.IMenu.Icon">
<summary>图标</summary>
</member>
<member name="P:XCode.Membership.IMenu.Visible">
<summary>可见</summary>
</member>
<member name="P:XCode.Membership.IMenu.Necessary">
<summary>必要。必要的菜单,必须至少有角色拥有这些权限,如果没有则自动授权给系统角色</summary>
</member>
<member name="P:XCode.Membership.IMenu.Permission">
<summary>权限子项。逗号分隔,每个权限子项名值竖线分隔</summary>
</member>
<member name="P:XCode.Membership.IMenu.Remark">
<summary>备注</summary>
</member>
<member name="P:XCode.Membership.IMenu.Item(System.String)">
<summary>获取/设置 字段值</summary>
<param name="name">字段名</param>
<returns></returns>
</member>
<member name="T:XCode.Membership.PermissionFlags">
<summary>操作权限</summary>
</member>
<member name="F:XCode.Membership.PermissionFlags.None">
<summary>无权限</summary>
</member>
<member name="F:XCode.Membership.PermissionFlags.Detail">
<summary>查看权限</summary>
</member>
<member name="F:XCode.Membership.PermissionFlags.Insert">
<summary>添加权限</summary>
</member>
<member name="F:XCode.Membership.PermissionFlags.Update">
<summary>修改权限</summary>
</member>
<member name="F:XCode.Membership.PermissionFlags.Delete">
<summary>删除权限</summary>
</member>
<member name="F:XCode.Membership.PermissionFlags.All">
<summary>所有权限</summary>
</member>
<member name="T:XCode.Membership.Role">
<summary>角色</summary>
</member>
<member name="T:XCode.Membership.Role`1">
<summary>角色</summary>
<typeparam name="TEntity"></typeparam>
<summary>角色</summary>
</member>
<member name="M:XCode.Membership.Role`1.InitData">
<summary>首次连接数据库时初始化数据,仅用于实体类重载,用户不应该调用该方法</summary>
</member>
<member name="M:XCode.Membership.Role`1.CheckRole">
<summary>初始化时执行必要的权限检查,以防万一管理员无法操作</summary>
</member>
<member name="M:XCode.Membership.Role`1.Valid(System.Boolean)">
<summary>验证数据,通过抛出异常的方式提示验证失败。</summary>
<param name="isNew">是否新数据</param>
</member>
<member name="M:XCode.Membership.Role`1.Delete">
<summary>已重载。</summary>
<returns></returns>
</member>
<member name="M:XCode.Membership.Role`1.Save">
<summary>已重载。</summary>
<returns></returns>
</member>
<member name="M:XCode.Membership.Role`1.Update">
<summary>已重载。</summary>
<returns></returns>
</member>
<member name="M:XCode.Membership.Role`1.OnLoad">
<summary>加载权限字典</summary>
</member>
<member name="M:XCode.Membership.Role`1.OnPropertyChanged(System.String)">
<summary>如果Permission被修改,则重新加载</summary>
<param name="fieldName"></param>
</member>
<member name="M:XCode.Membership.Role`1.FindByID(System.Int32)">
<summary>根据编号查找角色</summary>
<param name="id"></param>
<returns></returns>
</member>
<member name="M:XCode.Membership.Role`1.XCode#Membership#IRole#FindByID(System.Int32)">
<summary>根据编号查找角色</summary>
<param name="id"></param>
<returns></returns>
</member>
<member name="M:XCode.Membership.Role`1.FindByName(System.String)">
<summary>根据名称查找角色</summary>
<param name="name">名称</param>
<returns></returns>
</member>
<member name="P:XCode.Membership.Role`1.Permissions">
<summary>本角色权限集合</summary>
</member>
<member name="M:XCode.Membership.Role`1.Has(System.Int32,XCode.Membership.PermissionFlags)">
<summary>是否拥有指定资源的指定权限</summary>
<param name="resid"></param>
<param name="flag"></param>
<returns></returns>
</member>
<member name="M:XCode.Membership.Role`1.Get(System.Int32)">
<summary>获取权限</summary>
<param name="resid"></param>
<returns></returns>
</member>
<member name="M:XCode.Membership.Role`1.Set(System.Int32,XCode.Membership.PermissionFlags)">
<summary>设置该角色拥有指定资源的指定权限</summary>
<param name="resid"></param>
<param name="flag"></param>
</member>
<member name="M:XCode.Membership.Role`1.Reset(System.Int32,XCode.Membership.PermissionFlags)">
<summary>重置该角色指定的权限</summary>
<param name="resid"></param>
<param name="flag"></param>
</member>
<member name="M:XCode.Membership.Role`1.CheckValid(System.Int32[])">
<summary>检查是否有无效权限项,有则删除</summary>
<param name="resids"></param>
</member>
<member name="P:XCode.Membership.Role`1.Resources">
<summary>当前角色拥有的资源</summary>
</member>
<member name="M:XCode.Membership.Role`1.GetOrAdd(System.String)">
<summary>根据名称查找角色,若不存在则创建</summary>
<param name="name"></param>
<returns></returns>
</member>
<member name="M:XCode.Membership.Role`1.XCode#Membership#IRole#GetOrAdd(System.String)">
<summary>根据名称查找角色,若不存在则创建</summary>
<param name="name"></param>
<returns></returns>
</member>
<member name="M:XCode.Membership.Role`1.Add(System.String,System.Boolean,System.String)">
<summary>添加角色,如果存在,则直接返回,否则创建</summary>
<param name="name"></param>
<param name="issys"></param>
<param name="remark"></param>
<returns></returns>
</member>
<member name="P:XCode.Membership.Role`1.ID">
<summary>编号</summary>
</member>
<member name="P:XCode.Membership.Role`1.Name">
<summary>名称</summary>
</member>
<member name="P:XCode.Membership.Role`1.IsSystem">
<summary>系统。系统角色用于业务系统开发使用,禁止修改名称或删除</summary>
</member>
<member name="P:XCode.Membership.Role`1.Remark">
<summary>说明</summary>
</member>
<member name="P:XCode.Membership.Role`1.Permission">
<summary>权限。对不同资源的权限,逗号分隔,每个资源的权限子项竖线分隔</summary>
</member>
<member name="P:XCode.Membership.Role`1.CreateUserID">
<summary>创建用户</summary>
</member>
<member name="P:XCode.Membership.Role`1.CreateIP">
<summary>创建地址</summary>
</member>
<member name="P:XCode.Membership.Role`1.CreateTime">
<summary>创建时间</summary>
</member>
<member name="P:XCode.Membership.Role`1.UpdateUserID">
<summary>更新用户</summary>
</member>
<member name="P:XCode.Membership.Role`1.UpdateIP">
<summary>更新地址</summary>
</member>
<member name="P:XCode.Membership.Role`1.UpdateTime">
<summary>更新时间</summary>
</member>
<member name="P:XCode.Membership.Role`1.Item(System.String)">
<summary>获取/设置 字段值</summary>
<param name="name">字段名</param>
<returns></returns>
</member>
<member name="T:XCode.Membership.Role`1._">
<summary>取得角色字段信息的快捷方式</summary>
</member>
<member name="F:XCode.Membership.Role`1._.ID">
<summary>编号</summary>
</member>
<member name="F:XCode.Membership.Role`1._.Name">
<summary>名称</summary>
</member>
<member name="F:XCode.Membership.Role`1._.IsSystem">
<summary>系统。系统角色用于业务系统开发使用,禁止修改名称或删除</summary>
</member>
<member name="F:XCode.Membership.Role`1._.Remark">
<summary>说明</summary>
</member>
<member name="F:XCode.Membership.Role`1._.Permission">
<summary>权限。对不同资源的权限,逗号分隔,每个资源的权限子项竖线分隔</summary>
</member>
<member name="F:XCode.Membership.Role`1._.CreateUserID">
<summary>创建用户</summary>
</member>
<member name="F:XCode.Membership.Role`1._.CreateIP">
<summary>创建地址</summary>
</member>
<member name="F:XCode.Membership.Role`1._.CreateTime">
<summary>创建时间</summary>
</member>
<member name="F:XCode.Membership.Role`1._.UpdateUserID">
<summary>更新用户</summary>
</member>
<member name="F:XCode.Membership.Role`1._.UpdateIP">
<summary>更新地址</summary>
</member>
<member name="F:XCode.Membership.Role`1._.UpdateTime">
<summary>更新时间</summary>
</member>
<member name="T:XCode.Membership.Role`1.__">
<summary>取得角色字段名称的快捷方式</summary>
</member>
<member name="F:XCode.Membership.Role`1.__.ID">
<summary>编号</summary>
</member>
<member name="F:XCode.Membership.Role`1.__.Name">
<summary>名称</summary>
</member>
<member name="F:XCode.Membership.Role`1.__.IsSystem">
<summary>系统。系统角色用于业务系统开发使用,禁止修改名称或删除</summary>
</member>
<member name="F:XCode.Membership.Role`1.__.Remark">
<summary>说明</summary>
</member>
<member name="F:XCode.Membership.Role`1.__.Permission">
<summary>权限。对不同资源的权限,逗号分隔,每个资源的权限子项竖线分隔</summary>
</member>
<member name="F:XCode.Membership.Role`1.__.CreateUserID">
<summary>创建用户</summary>
</member>
<member name="F:XCode.Membership.Role`1.__.CreateIP">
<summary>创建地址</summary>
</member>
<member name="F:XCode.Membership.Role`1.__.CreateTime">
<summary>创建时间</summary>
</member>
<member name="F:XCode.Membership.Role`1.__.UpdateUserID">
<summary>更新用户</summary>
</member>
<member name="F:XCode.Membership.Role`1.__.UpdateIP">
<summary>更新地址</summary>
</member>
<member name="F:XCode.Membership.Role`1.__.UpdateTime">
<summary>更新时间</summary>
</member>
<member name="T:XCode.Membership.IRole">
<summary>角色接口</summary>
</member>
<member name="P:XCode.Membership.IRole.Permissions">
<summary>本角色权限集合</summary>
</member>
<member name="M:XCode.Membership.IRole.Has(System.Int32,XCode.Membership.PermissionFlags)">
<summary>是否拥有指定资源的指定权限</summary>
<param name="resid"></param>
<param name="flag"></param>
<returns></returns>
</member>
<member name="M:XCode.Membership.IRole.Get(System.Int32)">
<summary>获取权限</summary>
<param name="resid"></param>
<returns></returns>
</member>
<member name="M:XCode.Membership.IRole.Set(System.Int32,XCode.Membership.PermissionFlags)">
<summary>设置该角色拥有指定资源的指定权限</summary>
<param name="resid"></param>
<param name="flag"></param>
</member>
<member name="M:XCode.Membership.IRole.Reset(System.Int32,XCode.Membership.PermissionFlags)">
<summary>重置该角色指定的权限</summary>
<param name="resid"></param>
<param name="flag"></param>
</member>
<member name="P:XCode.Membership.IRole.Resources">
<summary>当前角色拥有的资源</summary>
</member>
<member name="M:XCode.Membership.IRole.FindByID(System.Int32)">
<summary>根据编号查找角色</summary>
<param name="id"></param>
<returns></returns>
</member>
<member name="M:XCode.Membership.IRole.GetOrAdd(System.String)">
<summary>根据名称查找角色,若不存在则创建</summary>
<param name="name"></param>
<returns></returns>
</member>
<member name="M:XCode.Membership.IRole.Save">
<summary>保存</summary>
<returns></returns>
</member>
<member name="P:XCode.Membership.IRole.ID">
<summary>编号</summary>
</member>
<member name="P:XCode.Membership.IRole.Name">
<summary>名称</summary>
</member>
<member name="P:XCode.Membership.IRole.IsSystem">
<summary>系统。系统角色用于业务系统开发使用,禁止修改名称或删除</summary>
</member>
<member name="P:XCode.Membership.IRole.Remark">
<summary>说明</summary>
</member>
<member name="P:XCode.Membership.IRole.Permission">
<summary>权限。对不同资源的权限,逗号分隔,每个资源的权限子项竖线分隔</summary>
</member>
<member name="P:XCode.Membership.IRole.CreateUserID">
<summary>创建用户</summary>
</member>
<member name="P:XCode.Membership.IRole.CreateIP">
<summary>创建地址</summary>
</member>
<member name="P:XCode.Membership.IRole.CreateTime">
<summary>创建时间</summary>
</member>
<member name="P:XCode.Membership.IRole.UpdateUserID">
<summary>更新用户</summary>
</member>
<member name="P:XCode.Membership.IRole.UpdateIP">
<summary>更新地址</summary>
</member>
<member name="P:XCode.Membership.IRole.UpdateTime">
<summary>更新时间</summary>
</member>
<member name="P:XCode.Membership.IRole.Item(System.String)">
<summary>获取/设置 字段值</summary>
<param name="name">字段名</param>
<returns></returns>
</member>
<member name="T:XCode.Membership.VisitStatModel">
<summary>访问统计模型</summary>
</member>
<member name="P:XCode.Membership.VisitStatModel.Page">
<summary>页面</summary>
</member>
<member name="P:XCode.Membership.VisitStatModel.Title">
<summary>标题</summary>
</member>
<member name="P:XCode.Membership.VisitStatModel.Cost">
<summary>耗时</summary>
</member>
<member name="P:XCode.Membership.VisitStatModel.User">
<summary>用户</summary>
</member>
<member name="P:XCode.Membership.VisitStatModel.IP">
<summary>IP地址</summary>
</member>
<member name="P:XCode.Membership.VisitStatModel.Error">
<summary>错误</summary>
</member>
<member name="M:XCode.Membership.VisitStatModel.Equals(System.Object)">
<summary>相等</summary>
<param name="obj"></param>
<returns></returns>
</member>
<member name="M:XCode.Membership.VisitStatModel.GetHashCode">
<summary>获取哈希</summary>
<returns></returns>
</member>
<member name="T:XCode.Membership.VisitStat">
<summary>访问统计</summary>
<summary>访问统计</summary>
</member>
<member name="M:XCode.Membership.VisitStat.FindByID(System.Int32)">
<summary>根据编号查找</summary>
<param name="id">编号</param>
<returns>实体对象</returns>
</member>
<member name="M:XCode.Membership.VisitStat.FindByModel(XCode.Membership.VisitStatModel,System.Boolean)">
<summary>根据模型查找</summary>
<param name="model"></param>
<param name="cache"></param>
<returns></returns>
</member>
<member name="M:XCode.Membership.VisitStat.Search(XCode.Membership.VisitStatModel,System.DateTime,System.DateTime,NewLife.Data.PageParameter)">
<summary>高级查询访问统计</summary>
<param name="model"></param>
<param name="start"></param>
<param name="end"></param>
<param name="param"></param>
<returns></returns>
</member>
<member name="M:XCode.Membership.VisitStat.FindAllPage">
<summary>查找所有</summary>
<returns></returns>
</member>
<member name="M:XCode.Membership.VisitStat.FindAllPageName">
<summary>获取所有名称</summary>
<returns></returns>
</member>
<member name="M:XCode.Membership.VisitStat.Process(XCode.Membership.VisitStatModel,XCode.Statistics.StatLevels[])">
<summary>业务统计</summary>
<param name="model">模型</param>
<param name="levels">要统计的层级</param>
<returns></returns>
</member>
<member name="P:XCode.Membership.VisitStat.ID">
<summary>编号</summary>
</member>
<member name="P:XCode.Membership.VisitStat.Level">
<summary>层级</summary>
</member>
<member name="P:XCode.Membership.VisitStat.Time">
<summary>时间</summary>
</member>
<member name="P:XCode.Membership.VisitStat.Page">
<summary>页面</summary>
</member>
<member name="P:XCode.Membership.VisitStat.Title">
<summary>标题</summary>
</member>
<member name="P:XCode.Membership.VisitStat.Times">
<summary>次数</summary>
</member>
<member name="P:XCode.Membership.VisitStat.Users">
<summary>用户</summary>
</member>
<member name="P:XCode.Membership.VisitStat.IPs">
<summary>IP</summary>
</member>
<member name="P:XCode.Membership.VisitStat.Error">
<summary>错误</summary>
</member>
<member name="P:XCode.Membership.VisitStat.Cost">
<summary>耗时。毫秒</summary>
</member>
<member name="P:XCode.Membership.VisitStat.MaxCost">
<summary>最大耗时。毫秒</summary>
</member>
<member name="P:XCode.Membership.VisitStat.CreateTime">
<summary>创建时间</summary>
</member>
<member name="P:XCode.Membership.VisitStat.UpdateTime">
<summary>更新时间</summary>
</member>
<member name="P:XCode.Membership.VisitStat.Remark">
<summary>详细信息</summary>
</member>
<member name="P:XCode.Membership.VisitStat.Item(System.String)">
<summary>获取/设置 字段值</summary>
<param name="name">字段名</param>
<returns></returns>
</member>
<member name="T:XCode.Membership.VisitStat._">
<summary>取得访问统计字段信息的快捷方式</summary>
</member>
<member name="F:XCode.Membership.VisitStat._.ID">
<summary>编号</summary>
</member>
<member name="F:XCode.Membership.VisitStat._.Level">
<summary>层级</summary>
</member>
<member name="F:XCode.Membership.VisitStat._.Time">
<summary>时间</summary>
</member>
<member name="F:XCode.Membership.VisitStat._.Page">
<summary>页面</summary>
</member>
<member name="F:XCode.Membership.VisitStat._.Title">
<summary>标题</summary>
</member>
<member name="F:XCode.Membership.VisitStat._.Times">
<summary>次数</summary>
</member>
<member name="F:XCode.Membership.VisitStat._.Users">
<summary>用户</summary>
</member>
<member name="F:XCode.Membership.VisitStat._.IPs">
<summary>IP</summary>
</member>
<member name="F:XCode.Membership.VisitStat._.Error">
<summary>错误</summary>
</member>
<member name="F:XCode.Membership.VisitStat._.Cost">
<summary>耗时。毫秒</summary>
</member>
<member name="F:XCode.Membership.VisitStat._.MaxCost">
<summary>最大耗时。毫秒</summary>
</member>
<member name="F:XCode.Membership.VisitStat._.CreateTime">
<summary>创建时间</summary>
</member>
<member name="F:XCode.Membership.VisitStat._.UpdateTime">
<summary>更新时间</summary>
</member>
<member name="F:XCode.Membership.VisitStat._.Remark">
<summary>详细信息</summary>
</member>
<member name="T:XCode.Membership.VisitStat.__">
<summary>取得访问统计字段名称的快捷方式</summary>
</member>
<member name="F:XCode.Membership.VisitStat.__.ID">
<summary>编号</summary>
</member>
<member name="F:XCode.Membership.VisitStat.__.Level">
<summary>层级</summary>
</member>
<member name="F:XCode.Membership.VisitStat.__.Time">
<summary>时间</summary>
</member>
<member name="F:XCode.Membership.VisitStat.__.Page">
<summary>页面</summary>
</member>
<member name="F:XCode.Membership.VisitStat.__.Title">
<summary>标题</summary>
</member>
<member name="F:XCode.Membership.VisitStat.__.Times">
<summary>次数</summary>
</member>
<member name="F:XCode.Membership.VisitStat.__.Users">
<summary>用户</summary>
</member>
<member name="F:XCode.Membership.VisitStat.__.IPs">
<summary>IP</summary>
</member>
<member name="F:XCode.Membership.VisitStat.__.Error">
<summary>错误</summary>
</member>
<member name="F:XCode.Membership.VisitStat.__.Cost">
<summary>耗时。毫秒</summary>
</member>
<member name="F:XCode.Membership.VisitStat.__.MaxCost">
<summary>最大耗时。毫秒</summary>
</member>
<member name="F:XCode.Membership.VisitStat.__.CreateTime">
<summary>创建时间</summary>
</member>
<member name="F:XCode.Membership.VisitStat.__.UpdateTime">
<summary>更新时间</summary>
</member>
<member name="F:XCode.Membership.VisitStat.__.Remark">
<summary>详细信息</summary>
</member>
<member name="T:XCode.Membership.IVisitStat">
<summary>访问统计接口</summary>
</member>
<member name="P:XCode.Membership.IVisitStat.ID">
<summary>编号</summary>
</member>
<member name="P:XCode.Membership.IVisitStat.Level">
<summary>层级</summary>
</member>
<member name="P:XCode.Membership.IVisitStat.Time">
<summary>时间</summary>
</member>
<member name="P:XCode.Membership.IVisitStat.Page">
<summary>页面</summary>
</member>
<member name="P:XCode.Membership.IVisitStat.Title">
<summary>标题</summary>
</member>
<member name="P:XCode.Membership.IVisitStat.Times">
<summary>次数</summary>
</member>
<member name="P:XCode.Membership.IVisitStat.Users">
<summary>用户</summary>
</member>
<member name="P:XCode.Membership.IVisitStat.IPs">
<summary>IP</summary>
</member>
<member name="P:XCode.Membership.IVisitStat.Error">
<summary>错误</summary>
</member>
<member name="P:XCode.Membership.IVisitStat.Cost">
<summary>耗时。毫秒</summary>
</member>
<member name="P:XCode.Membership.IVisitStat.MaxCost">
<summary>最大耗时。毫秒</summary>
</member>
<member name="P:XCode.Membership.IVisitStat.CreateTime">
<summary>创建时间</summary>
</member>
<member name="P:XCode.Membership.IVisitStat.UpdateTime">
<summary>更新时间</summary>
</member>
<member name="P:XCode.Membership.IVisitStat.Remark">
<summary>详细信息</summary>
</member>
<member name="P:XCode.Membership.IVisitStat.Item(System.String)">
<summary>获取/设置 字段值</summary>
<param name="name">字段名</param>
<returns></returns>
</member>
<member name="T:XCode.Service.DbClient">
<summary>数据客户端</summary>
</member>
<member name="P:XCode.Service.DbClient.Db">
<summary>数据库连接</summary>
</member>
<member name="P:XCode.Service.DbClient.UserName">
<summary>用户名</summary>
</member>
<member name="P:XCode.Service.DbClient.Password">
<summary>密码</summary>
</member>
<member name="P:XCode.Service.DbClient.Info">
<summary>最后一次登录成功后的消息</summary>
</member>
<member name="M:XCode.Service.DbClient.#ctor">
<summary>实例化</summary>
</member>
<member name="M:XCode.Service.DbClient.#ctor(System.String)">
<summary>实例化</summary>
<param name="uri"></param>
</member>
<member name="M:XCode.Service.DbClient.OnLogin(NewLife.Net.ISocketClient)">
<summary>连接后自动登录</summary>
<param name="client">客户端</param>
</member>
<member name="M:XCode.Service.DbClient.QueryAsync(System.String,System.Collections.Generic.IDictionary{System.String,System.Object})">
<summary>异步查询</summary>
<param name="sql">语句</param>
<param name="ps">参数集合</param>
<returns></returns>
</member>
<member name="M:XCode.Service.DbClient.QueryCountAsync(System.String)">
<summary>异步查数据表总记录数</summary>
<remarks>借助索引快速查询,但略有偏差</remarks>
<param name="tableName">数据表</param>
<returns></returns>
</member>
<member name="M:XCode.Service.DbClient.ExecuteAsync(System.String,System.Collections.Generic.IDictionary{System.String,System.Object})">
<summary>异步执行</summary>
<param name="sql">语句</param>
<param name="ps">参数集合</param>
<returns></returns>
</member>
<member name="T:XCode.Service.DbParam">
<summary>数据参数</summary>
</member>
<member name="T:XCode.Service.DbServer">
<summary>数据服务器</summary>
</member>
<member name="M:XCode.Service.DbServer.#ctor">
<summary>实例化数据服务</summary>
</member>
<member name="T:XCode.Service.DbController">
<summary>数据服务</summary>
</member>
<member name="P:XCode.Service.DbController.Dal">
<summary>数据操作层</summary>
</member>
<member name="M:XCode.Service.DbController.Login(System.String,System.String,System.String,System.String)">
<summary>登录</summary>
<param name="db"></param>
<param name="user"></param>
<param name="pass"></param>
<param name="cookie"></param>
<returns></returns>
</member>
<member name="M:XCode.Service.DbController.Query(NewLife.Data.Packet)">
<summary>查询数据</summary>
<param name="pk"></param>
<returns></returns>
</member>
<member name="M:XCode.Service.DbController.QueryCount(System.String)">
<summary>查询数据表总记录数</summary>
<param name="tableName"></param>
<returns></returns>
</member>
<member name="M:XCode.Service.DbController.Execute(NewLife.Data.Packet)">
<summary>执行语句</summary>
<param name="pk"></param>
<returns></returns>
</member>
<member name="M:XCode.Service.DbController.OnActionExecuting(NewLife.Remoting.ControllerContext)">
<summary>执行前</summary>
<param name="filterContext"></param>
</member>
<member name="M:XCode.Service.DbController.OnActionExecuted(NewLife.Remoting.ControllerContext)">
<summary>执行后</summary>
<param name="filterContext"></param>
</member>
<member name="T:XCode.Service.LoginInfo">
<summary>登录信息</summary>
</member>
<member name="P:XCode.Service.LoginInfo.DbType">
<summary>数据类型</summary>
</member>
<member name="P:XCode.Service.LoginInfo.Version">
<summary>版本</summary>
</member>
<member name="T:XCode.Statistics.IStat">
<summary>统计接口</summary>
</member>
<member name="P:XCode.Statistics.IStat.Level">
<summary>层级</summary>
</member>
<member name="P:XCode.Statistics.IStat.Time">
<summary>时间</summary>
</member>
<member name="P:XCode.Statistics.IStat.CreateTime">
<summary>创建时间</summary>
</member>
<member name="P:XCode.Statistics.IStat.UpdateTime">
<summary>更新时间</summary>
</member>
<member name="T:XCode.Statistics.StatHelper">
<summary>统计助手类</summary>
</member>
<member name="M:XCode.Statistics.StatHelper.GetOrAdd``2(``1,System.Func{``1,System.Boolean,``0},System.Action{``0})">
<summary>获取 或 新增 统计对象</summary>
<typeparam name="TEntity"></typeparam>
<typeparam name="TModel"></typeparam>
<param name="model"></param>
<param name="find"></param>
<param name="onCreate"></param>
<returns></returns>
</member>
<member name="T:XCode.Statistics.StatLevels">
<summary>统计层级</summary>
</member>
<member name="F:XCode.Statistics.StatLevels.All">
<summary>全局</summary>
</member>
<member name="F:XCode.Statistics.StatLevels.Year">
<summary>年</summary>
</member>
<member name="F:XCode.Statistics.StatLevels.Month">
<summary>月</summary>
</member>
<member name="F:XCode.Statistics.StatLevels.Day">
<summary>日</summary>
</member>
<member name="F:XCode.Statistics.StatLevels.Hour">
<summary>小时</summary>
</member>
<member name="F:XCode.Statistics.StatLevels.Minute">
<summary>分钟</summary>
</member>
<member name="F:XCode.Statistics.StatLevels.Quarter">
<summary>季度</summary>
</member>
<member name="T:XCode.Statistics.StatModel`1">
<summary>统计模型</summary>
<typeparam name="T"></typeparam>
</member>
<member name="M:XCode.Statistics.StatModel`1.Copy(`0)">
<summary>拷贝</summary>
<param name="model"></param>
</member>
<member name="M:XCode.Statistics.StatModel`1.Clone">
<summary>克隆到目标类型</summary>
<returns></returns>
</member>
<member name="M:XCode.Statistics.StatModel`1.Split(XCode.Statistics.StatLevels[])">
<summary>分割为多个层级</summary>
<param name="levels"></param>
<returns></returns>
</member>
<member name="T:XCode.Statistics.StatModel">
<summary>统计模型</summary>
</member>
<member name="P:XCode.Statistics.StatModel.Time">
<summary>时间</summary>
</member>
<member name="P:XCode.Statistics.StatModel.Level">
<summary>层级</summary>
</member>
<member name="M:XCode.Statistics.StatModel.#ctor">
<summary>实例化</summary>
</member>
<member name="M:XCode.Statistics.StatModel.GetDate(XCode.Statistics.StatLevels)">
<summary>获取不同层级的时间。选择层级区间的开头</summary>
<param name="level"></param>
<returns></returns>
</member>
<member name="M:XCode.Statistics.StatModel.ToString">
<summary>数据库时间转显示字符串</summary>
<returns></returns>
</member>
<member name="M:XCode.Statistics.StatModel.Fill(System.Collections.Generic.IDictionary{System.String,System.String},XCode.Statistics.StatLevels)">
<summary>使用参数填充</summary>
<param name="ps">请求参数</param>
<param name="defLevel">默认级别</param>
</member>
<member name="M:XCode.Statistics.StatModel.Equals(System.Object)">
<summary>相等</summary>
<param name="obj"></param>
<returns></returns>
</member>
<member name="M:XCode.Statistics.StatModel.GetHashCode">
<summary>获取哈希</summary>
<returns></returns>
</member>
<member name="T:XCode.ConcatExpression">
<summary>逗号连接表达式</summary>
</member>
<member name="P:XCode.ConcatExpression.Builder">
<summary>内置字符串</summary>
</member>
<member name="M:XCode.ConcatExpression.#ctor">
<summary>实例化</summary>
</member>
<member name="M:XCode.ConcatExpression.#ctor(System.String)">
<summary>实例化</summary>
<param name="exp"></param>
</member>
<member name="M:XCode.ConcatExpression.And(System.String)">
<summary>增加</summary>
<param name="exp"></param>
<returns></returns>
</member>
<member name="M:XCode.ConcatExpression.GetString(System.Text.StringBuilder,System.Collections.Generic.IDictionary{System.String,System.Object})">
<summary>已重载。</summary>
<param name="builder">字符串构建器</param>
<param name="ps">参数字典</param>
<returns></returns>
</member>
<member name="M:XCode.ConcatExpression.op_BitwiseAnd(XCode.ConcatExpression,System.String)">
<summary>重载运算符实现And操作,同时通过布尔型支持AndIf</summary>
<param name="exp"></param>
<param name="value">数值</param>
<returns></returns>
</member>
<member name="T:XCode.Expression">
<summary>表达式基类</summary>
</member>
<member name="P:XCode.Expression.Text">
<summary>文本表达式</summary>
</member>
<member name="M:XCode.Expression.#ctor">
<summary>实例化简单表达式</summary>
</member>
<member name="M:XCode.Expression.#ctor(System.String)">
<summary>用一段文本实例化简单表达式</summary>
<param name="value"></param>
</member>
<member name="F:XCode.Expression._regOr">
<summary>用于匹配Or关键字的正则表达式</summary>
</member>
<member name="M:XCode.Expression.GetString(System.Collections.Generic.IDictionary{System.String,System.Object})">
<summary>获取表达式的文本表示</summary>
<param name="ps">参数字典</param>
<returns></returns>
</member>
<member name="M:XCode.Expression.GetString(System.Text.StringBuilder,System.Collections.Generic.IDictionary{System.String,System.Object})">
<summary>获取字符串</summary>
<param name="builder">字符串构建器</param>
<param name="ps">参数字典</param>
</member>
<member name="M:XCode.Expression.ToString">
<summary>输出该表达式的字符串形式</summary>
<returns></returns>
</member>
<member name="M:XCode.Expression.op_Implicit(XCode.Expression)~System.String">
<summary>类型转换</summary>
<param name="obj"></param>
<returns></returns>
</member>
<member name="M:XCode.Expression.op_BitwiseAnd(XCode.Expression,XCode.Expression)">
<summary>重载运算符实现And操作</summary>
<param name="exp"></param>
<param name="value">数值</param>
<returns></returns>
</member>
<member name="M:XCode.Expression.op_BitwiseAnd(XCode.Expression,System.String)">
<summary>重载运算符实现And操作</summary>
<param name="exp"></param>
<param name="value">数值</param>
<returns></returns>
</member>
<member name="M:XCode.Expression.op_BitwiseOr(XCode.Expression,XCode.Expression)">
<summary>重载运算符实现Or操作</summary>
<param name="exp"></param>
<param name="value">数值</param>
<returns></returns>
</member>
<member name="M:XCode.Expression.op_BitwiseOr(XCode.Expression,System.String)">
<summary>重载运算符实现Or操作</summary>
<param name="exp"></param>
<param name="value">数值</param>
<returns></returns>
</member>
<member name="M:XCode.Expression.op_Addition(XCode.Expression,XCode.Expression)">
<summary>重载运算符实现+操作</summary>
<param name="exp"></param>
<param name="value">数值</param>
<returns></returns>
</member>
<member name="T:XCode.FormatExpression">
<summary>格式化表达式。通过字段、格式化字符串和右值去构建表达式</summary>
<remarks>右值可能为空,比如{0} Is Null</remarks>
</member>
<member name="P:XCode.FormatExpression.Field">
<summary>字段</summary>
</member>
<member name="P:XCode.FormatExpression.Format">
<summary>格式化字符串</summary>
</member>
<member name="P:XCode.FormatExpression.Value">
<summary>操作数</summary>
</member>
<member name="M:XCode.FormatExpression.#ctor(XCode.Configuration.FieldItem,System.String,System.Object)">
<summary>构造格式化表达式</summary>
<param name="field"></param>
<param name="format"></param>
<param name="value"></param>
</member>
<member name="M:XCode.FormatExpression.GetString(System.Text.StringBuilder,System.Collections.Generic.IDictionary{System.String,System.Object})">
<summary>已重载。输出字段表达式的字符串形式</summary>
<param name="builder">字符串构建器</param>
<param name="ps">参数字典</param>
<returns></returns>
</member>
<member name="T:XCode.FieldExpression">
<summary>字段表达式</summary>
</member>
<member name="P:XCode.FieldExpression.Field">
<summary>字段</summary>
</member>
<member name="P:XCode.FieldExpression.Action">
<summary>动作</summary>
</member>
<member name="P:XCode.FieldExpression.Value">
<summary>值</summary>
</member>
<member name="M:XCode.FieldExpression.#ctor(XCode.Configuration.FieldItem,System.String,System.Object)">
<summary>构造字段表达式</summary>
<param name="field"></param>
<param name="action"></param>
<param name="value"></param>
</member>
<member name="M:XCode.FieldExpression.GetString(System.Text.StringBuilder,System.Collections.Generic.IDictionary{System.String,System.Object})">
<summary>已重载。输出字段表达式的字符串形式</summary>
<param name="builder">字符串构建器</param>
<param name="ps">参数字典</param>
<returns></returns>
</member>
<member name="T:XCode.PreApplicationStartCode">
<summary>应用启动代码</summary>
</member>
<member name="M:XCode.PreApplicationStartCode.Start">
<summary>Registers pre-application start code for web pages.</summary>
</member>
<member name="T:XCode.Setting">
<summary>XCode设置</summary>
</member>
<member name="P:XCode.Setting.Debug">
<summary>是否启用调试。默认启用</summary>
</member>
<member name="P:XCode.Setting.ShowSQL">
<summary>是否输出SQL语句,默认启用</summary>
</member>
<member name="P:XCode.Setting.SQLPath">
<summary>设置SQL输出的单独目录,默认为空,SQL输出到当前日志中。生产环境建议输出到站点外单独的SqlLog目录</summary>
</member>
<member name="P:XCode.Setting.TraceSQLTime">
<summary>跟踪SQL执行时间,大于该阀值将输出日志,默认1000毫秒</summary>
</member>
<member name="P:XCode.Setting.ConnMaps">
<summary>连接名映射#,表名映射@,表名映射@,把实体类中的Test2和Test3连接名映射到Test去</summary>
</member>
<member name="P:XCode.Setting.UseParameter">
<summary>参数化添删改查。默认关闭</summary>
</member>
<member name="P:XCode.Setting.SQLiteDbPath">
<summary>SQLite数据库默认目录。没有设置连接字符串的连接默认创建SQLite连接,数据库放在该目录</summary>
</member>
<member name="P:XCode.Setting.BackupPath">
<summary>备份目录。备份数据库时存放的目录</summary>
</member>
<member name="P:XCode.Setting.CommandTimeout">
<summary>命令超时。查询执行超时时间,默认0秒不限制</summary>
</member>
<member name="P:XCode.Setting.EntityCacheExpire">
<summary>实体缓存过期。默认10秒</summary>
</member>
<member name="P:XCode.Setting.SingleCacheExpire">
<summary>单对象缓存过期。默认10秒</summary>
</member>
<member name="P:XCode.Setting.ExtendExpire">
<summary>扩展属性过期。默认10秒</summary>
</member>
<member name="P:XCode.Setting.Migration">
<summary>反向工程。Off 关闭;ReadOnly 只读不执行;On 打开,仅新建;Full 完全,修改删除</summary>
</member>
<member name="M:XCode.Setting.OnLoaded">
<summary>加载后检查默认值</summary>
</member>
<member name="T:XCode.Sync.ISyncMaster">
<summary>同步架构主方接口</summary>
<remarks>
同步框架中的数据供应方,同步是双向的,从方可以从主方拿数据,也可以把更新数据提交给主方。
可通过<see cref="P:XCode.Sync.ISyncMaster.ReadOnly"/>来指定主方是否只读,只读的主方不接受数据提交。
</remarks>
</member>
<member name="P:XCode.Sync.ISyncMaster.ReadOnly">
<summary>是否只读。只读的主方不接受数据提交</summary>
</member>
<member name="M:XCode.Sync.ISyncMaster.GetAllUpdated(System.DateTime,System.Int32,System.Int32)">
<summary>获取指定时间后更新过的数据</summary>
<param name="last"></param>
<param name="start"></param>
<param name="max"></param>
<returns></returns>
</member>
<member name="M:XCode.Sync.ISyncMaster.GetAllUpdatedCount(System.DateTime)">
<summary>获取指定时间后更新过的数据数量</summary>
<param name="last"></param>
<returns></returns>
</member>
<member name="M:XCode.Sync.ISyncMaster.Insert(XCode.Sync.ISyncMasterEntity[])">
<summary>提交新增数据</summary>
<param name="list"></param>
<returns>返回新增成功后的数据,包括自增字段</returns>
</member>
<member name="M:XCode.Sync.ISyncMaster.Update(XCode.Sync.ISyncMasterEntity)">
<summary>更新数据</summary>
<param name="entity"></param>
<returns></returns>
</member>
<member name="M:XCode.Sync.ISyncMaster.Delete(System.Object[])">
<summary>根据主键数组删除数据</summary>
<param name="keys"></param>
<returns>是否删除成功</returns>
</member>
<member name="M:XCode.Sync.ISyncMaster.CheckExists(System.Object[])">
<summary>根据主键数组检查数据是否仍然存在</summary>
<param name="keys"></param>
<returns>是否存在</returns>
</member>
<member name="M:XCode.Sync.ISyncMaster.Create">
<summary>创建一个空白实体</summary>
<returns></returns>
</member>
<member name="M:XCode.Sync.ISyncMaster.GetNames">
<summary>获取要同步的字段名</summary>
<returns></returns>
</member>
<member name="T:XCode.Sync.ISyncMasterEntity">
<summary>同步框架主方实体接口,由主方实体类实现</summary>
</member>
<member name="P:XCode.Sync.ISyncMasterEntity.Key">
<summary>唯一标识数据的键值</summary>
</member>
<member name="P:XCode.Sync.ISyncMasterEntity.LastUpdate">
<summary>最后修改时间。包括修改同步状态为假删除</summary>
</member>
<member name="T:XCode.Sync.SyncMaster">
<summary>同步架构主方</summary>
</member>
<member name="P:XCode.Sync.SyncMaster.Facotry">
<summary>工厂</summary>
</member>
<member name="P:XCode.Sync.SyncMaster.KeyName">
<summary>主键名</summary>
</member>
<member name="P:XCode.Sync.SyncMaster.LastUpdateName">
<summary>最后更新字段名。如果没有指定,将每次都同步全部数据</summary>
</member>
<member name="P:XCode.Sync.SyncMaster.ReadOnly">
<summary>是否只读。只读的主方不接受数据提交</summary>
</member>
<member name="M:XCode.Sync.SyncMaster.GetAllUpdated(System.DateTime,System.Int32,System.Int32)">
<summary>检查在指定时间后更新过的数据</summary>
<param name="last"></param>
<param name="start"></param>
<param name="max"></param>
<returns></returns>
</member>
<member name="M:XCode.Sync.SyncMaster.GetAllUpdatedCount(System.DateTime)">
<summary>获取指定时间后更新过的数据数量</summary>
<param name="last"></param>
<returns></returns>
</member>
<member name="M:XCode.Sync.SyncMaster.Insert(XCode.Sync.ISyncMasterEntity[])">
<summary>提交新增数据</summary>
<param name="list"></param>
<returns>返回新增成功后的数据,包括自增字段</returns>
</member>
<member name="M:XCode.Sync.SyncMaster.Update(XCode.Sync.ISyncMasterEntity)">
<summary>更新数据</summary>
<param name="entity"></param>
<returns></returns>
</member>
<member name="M:XCode.Sync.SyncMaster.Delete(System.Object[])">
<summary>根据主键数组删除数据</summary>
<param name="keys"></param>
<returns>是否删除成功</returns>
</member>
<member name="M:XCode.Sync.SyncMaster.CheckExists(System.Object[])">
<summary>根据主键数组检查数据是否仍然存在</summary>
<param name="keys"></param>
<returns>是否存在</returns>
</member>
<member name="M:XCode.Sync.SyncMaster.Create">
<summary>创建一个空白实体</summary>
<returns></returns>
</member>
<member name="M:XCode.Sync.SyncMaster.GetNames">
<summary>获取要同步的字段名</summary>
<returns></returns>
</member>
<member name="P:XCode.Sync.SyncMaster.SyncMasterEntity.Host">
<summary>宿主</summary>
</member>
<member name="P:XCode.Sync.SyncMaster.SyncMasterEntity.Entity">
<summary>实体</summary>
</member>
<member name="T:XCode.Sync.ISyncSlave">
<summary>同步框架从方接口</summary>
</member>
<member name="P:XCode.Sync.ISyncSlave.LastSync">
<summary>最后同步时间</summary>
<returns></returns>
</member>
<member name="M:XCode.Sync.ISyncSlave.GetAllNew(System.Int32,System.Int32)">
<summary>获取所有新添加的数据</summary>
<param name="start"></param>
<param name="max"></param>
<returns></returns>
</member>
<member name="M:XCode.Sync.ISyncSlave.GetAllDelete(System.Int32,System.Int32)">
<summary>获取所有删除的数据</summary>
<param name="start"></param>
<param name="max"></param>
<returns></returns>
</member>
<member name="M:XCode.Sync.ISyncSlave.GetAllOld(System.DateTime,System.Int32,System.Int32)">
<summary>获取所有未同步的旧数据</summary>
<param name="now"></param>
<param name="start"></param>
<param name="max"></param>
<returns></returns>
</member>
<member name="M:XCode.Sync.ISyncSlave.FindByKey(System.Object)">
<summary>根据主键查找</summary>
<param name="key"></param>
<returns></returns>
</member>
<member name="M:XCode.Sync.ISyncSlave.Create">
<summary>创建一个空白实体</summary>
<returns></returns>
</member>
<member name="M:XCode.Sync.ISyncSlave.GetNames">
<summary>获取要同步的字段名</summary>
<returns></returns>
</member>
<member name="T:XCode.Sync.ISyncSlaveEntity">
<summary>同步框架从方实体接口,由从方实体类实现</summary>
</member>
<member name="P:XCode.Sync.ISyncSlaveEntity.Key">
<summary>唯一标识数据的键值</summary>
</member>
<member name="P:XCode.Sync.ISyncSlaveEntity.LastUpdate">
<summary>最后修改时间。包括修改同步状态为假删除</summary>
</member>
<member name="P:XCode.Sync.ISyncSlaveEntity.LastSync">
<summary>最后同步时间。包括向主方询问数据是否已删除</summary>
</member>
<member name="M:XCode.Sync.ISyncSlaveEntity.ChangeKey(System.Object)">
<summary>改变主键。本地新增加的数据,在提交到提供方后,可能主键会改变(如自增字段),需要更新本地主键为新主键</summary>
<param name="key"></param>
</member>
<member name="M:XCode.Sync.ISyncSlaveEntity.Insert">
<summary>插入</summary>
<returns></returns>
</member>
<member name="M:XCode.Sync.ISyncSlaveEntity.Update">
<summary>更新</summary>
<returns></returns>
</member>
<member name="M:XCode.Sync.ISyncSlaveEntity.Delete">
<summary>删除本地数据</summary>
<returns></returns>
</member>
<member name="T:XCode.Sync.SyncSlave">
<summary>同步框架从方,实体类默认实现。要求实体类实现<see cref="T:XCode.Sync.ISyncSlaveEntity"/>接口</summary>
</member>
<member name="P:XCode.Sync.SyncSlave.Factory">
<summary>工厂</summary>
</member>
<member name="P:XCode.Sync.SyncSlave.KeyName">
<summary>主键名</summary>
</member>
<member name="P:XCode.Sync.SyncSlave.LastUpdateName">
<summary>最后更新字段名</summary>
</member>
<member name="P:XCode.Sync.SyncSlave.LastSyncName">
<summary>最后更新字段名</summary>
</member>
<member name="P:XCode.Sync.SyncSlave.LastUpdateField">
<summary>最后更新字段名。先硬编码,不考虑可变</summary>
</member>
<member name="P:XCode.Sync.SyncSlave.LastSyncField">
<summary>最后同步字段名</summary>
</member>
<member name="P:XCode.Sync.SyncSlave.LastSync">
<summary>最后同步时间</summary>
</member>
<member name="M:XCode.Sync.SyncSlave.GetLastSync">
<summary>获取最后同步时间</summary>
<returns></returns>
</member>
<member name="M:XCode.Sync.SyncSlave.GetAllNew(System.Int32,System.Int32)">
<summary>获取所有新添加的数据</summary>
<param name="start"></param>
<param name="max"></param>
<returns></returns>
</member>
<member name="M:XCode.Sync.SyncSlave.GetAllDelete(System.Int32,System.Int32)">
<summary>获取所有删除的数据</summary>
<param name="start"></param>
<param name="max"></param>
<returns></returns>
</member>
<member name="M:XCode.Sync.SyncSlave.GetAllOld(System.DateTime,System.Int32,System.Int32)">
<summary>获取所有未同步的旧数据</summary>
<param name="now"></param>
<param name="start"></param>
<param name="max"></param>
<returns></returns>
</member>
<member name="M:XCode.Sync.SyncSlave.FindByKey(System.Object)">
<summary>根据主键查找</summary>
<param name="key"></param>
<returns></returns>
</member>
<member name="M:XCode.Sync.SyncSlave.Create">
<summary>创建一个空白实体</summary>
<returns></returns>
</member>
<member name="M:XCode.Sync.SyncSlave.GetNames">
<summary>获取要同步的字段名</summary>
<returns></returns>
</member>
<member name="T:XCode.Sync.SyncManager">
<summary>同步管理器</summary>
</member>
<member name="P:XCode.Sync.SyncManager.Master">
<summary>同步框架主方,数据提供者。</summary>
</member>
<member name="P:XCode.Sync.SyncManager.Slave">
<summary>同步框架从方,数据消费者</summary>
</member>
<member name="P:XCode.Sync.SyncManager.BatchSize">
<summary>同步批大小</summary>
</member>
<member name="P:XCode.Sync.SyncManager.Names">
<summary>字段集合</summary>
</member>
<member name="P:XCode.Sync.SyncManager.UpdateConflictByLastUpdate">
<summary>是否根据最后修改时间来解决双方同时更新而带来的冲突,否则强制优先本地</summary>
</member>
<member name="M:XCode.Sync.SyncManager.Start">
<summary>开始处理</summary>
</member>
<member name="M:XCode.Sync.SyncManager.ProcessNew">
<summary>处理本地添加的数据</summary>
</member>
<member name="M:XCode.Sync.SyncManager.ProcessDelete">
<summary>处理本地删除的数据</summary>
</member>
<member name="M:XCode.Sync.SyncManager.ProcessItems">
<summary>处理更新的数据</summary>
</member>
<member name="M:XCode.Sync.SyncManager.ProcessItem(XCode.Sync.ISyncMasterEntity)">
<summary>处理更新的数据项</summary>
<param name="remote"></param>
</member>
<member name="M:XCode.Sync.SyncManager.ProcessOthers(System.DateTime)">
<summary>查找还有哪些没有同步的,可能提供者已经删除</summary>
<param name="now"></param>
</member>
<member name="T:XCode.ModelCheckModes">
<summary>模型检查模式</summary>
</member>
<member name="F:XCode.ModelCheckModes.CheckAllTablesWhenInit">
<summary>初始化时检查所有表。默认值。具有最好性能。</summary>
</member>
<member name="F:XCode.ModelCheckModes.CheckTableWhenFirstUse">
<summary>第一次使用时检查表。常用于通用实体类等存在大量实体类但不会同时使用所有实体类的场合,避免反向工程生成没有使用到的实体类的数据表。</summary>
</member>
<member name="T:XCode.ModelCheckModeAttribute">
<summary>模型检查模式</summary>
</member>
<member name="P:XCode.ModelCheckModeAttribute.Mode">
<summary>模式</summary>
</member>
<member name="M:XCode.ModelCheckModeAttribute.#ctor(XCode.ModelCheckModes)">
<summary>指定实体类的模型检查模式</summary>
<param name="mode"></param>
</member>
<member name="T:XCode.ModelSortModes">
<summary>模型字段排序模式</summary>
</member>
<member name="F:XCode.ModelSortModes.BaseFirst">
<summary>基类优先。默认值。一般用于扩展某个实体类增加若干数据字段。</summary>
</member>
<member name="F:XCode.ModelSortModes.DerivedFirst">
<summary>派生类优先。一般用于具有某些公共数据字段的基类。</summary>
</member>
<member name="T:XCode.ModelSortModeAttribute">
<summary>模型字段排序模式。其实不是很重要,仅仅影响数据字段在数据表中的先后顺序而已</summary>
</member>
<member name="P:XCode.ModelSortModeAttribute.Mode">
<summary>模式</summary>
</member>
<member name="M:XCode.ModelSortModeAttribute.#ctor(XCode.ModelSortModes)">
<summary>指定实体类的模型字段排序模式</summary>
<param name="mode"></param>
</member>
<member name="T:XCode.Configuration.TableItem">
<summary>数据表元数据</summary>
</member>
<member name="P:XCode.Configuration.TableItem.EntityType">
<summary>实体类型</summary>
</member>
<member name="F:XCode.Configuration.TableItem._Table">
<summary>绑定表特性</summary>
</member>
<member name="F:XCode.Configuration.TableItem._Indexes">
<summary>绑定索引特性</summary>
</member>
<member name="P:XCode.Configuration.TableItem.Description">
<summary>说明</summary>
</member>
<member name="P:XCode.Configuration.TableItem.TableName">
<summary>表名</summary>
</member>
<member name="P:XCode.Configuration.TableItem.ConnName">
<summary>连接名</summary>
</member>
<member name="P:XCode.Configuration.TableItem.ConnMaps">
<summary>连接名映射</summary>
</member>
<member name="M:XCode.Configuration.TableItem.FindConnMap(System.String,System.Type)">
<summary>根据连接名和类名查找连接名映射</summary>
<param name="connName"></param>
<param name="type"></param>
<returns></returns>
</member>
<member name="P:XCode.Configuration.TableItem.Fields">
<summary>数据字段</summary>
</member>
<member name="P:XCode.Configuration.TableItem.AllFields">
<summary>所有字段</summary>
</member>
<member name="P:XCode.Configuration.TableItem.Identity">
<summary>标识列</summary>
</member>
<member name="P:XCode.Configuration.TableItem.PrimaryKeys">
<summary>主键。不会返回null</summary>
</member>
<member name="P:XCode.Configuration.TableItem.Master">
<summary>主字段。主字段作为业务主要字段,代表当前数据行意义</summary>
</member>
<member name="P:XCode.Configuration.TableItem.FieldNames">
<summary>字段名集合,不区分大小写的哈希表存储,外部不要修改元素数据</summary>
</member>
<member name="P:XCode.Configuration.TableItem.DataTable">
<summary>数据表架构</summary>
</member>
<member name="P:XCode.Configuration.TableItem.ModelCheckMode">
<summary>模型检查模式</summary>
</member>
<member name="M:XCode.Configuration.TableItem.Create(System.Type)">
<summary>创建</summary>
<param name="type">类型</param>
<returns></returns>
</member>
<member name="M:XCode.Configuration.TableItem.GetFields(System.Type)">
<summary>获取属性,保证基类属性在前</summary>
<param name="type">类型</param>
<returns></returns>
</member>
<member name="M:XCode.Configuration.TableItem.FindByName(System.String)">
<summary>根据名称查找</summary>
<param name="name">名称</param>
<returns></returns>
</member>
<member name="M:XCode.Configuration.TableItem.ToString">
<summary>已重载。</summary>
<returns></returns>
</member>
<member name="M:XCode.Configuration.TableItem.Add(System.String,System.Type,System.String,System.Int32)">
<summary>动态增加字段</summary>
<param name="name"></param>
<param name="type"></param>
<param name="description"></param>
<param name="length"></param>
<returns></returns>
</member>
<member name="T:XCode.Configuration.FieldItem">
<summary>数据属性元数据以及特性</summary>
</member>
<member name="F:XCode.Configuration.FieldItem._Property">
<summary>属性元数据</summary>
</member>
<member name="F:XCode.Configuration.FieldItem._Column">
<summary>绑定列特性</summary>
</member>
<member name="F:XCode.Configuration.FieldItem._DataObjectField">
<summary>数据字段特性</summary>
</member>
<member name="P:XCode.Configuration.FieldItem.Description">
<summary>备注</summary>
</member>
<member name="P:XCode.Configuration.FieldItem.DisplayName">
<summary>说明</summary>
</member>
<member name="P:XCode.Configuration.FieldItem.Name">
<summary>属性名</summary>
</member>
<member name="P:XCode.Configuration.FieldItem.Type">
<summary>属性类型</summary>
</member>
<member name="P:XCode.Configuration.FieldItem.DeclaringType">
<summary>声明类型</summary>
</member>
<member name="P:XCode.Configuration.FieldItem.IsIdentity">
<summary>是否标识列</summary>
</member>
<member name="P:XCode.Configuration.FieldItem.PrimaryKey">
<summary>是否主键</summary>
</member>
<member name="P:XCode.Configuration.FieldItem.Master">
<summary>是否主字段。主字段作为业务主要字段,代表当前数据行意义</summary>
</member>
<member name="P:XCode.Configuration.FieldItem.IsNullable">
<summary>是否允许空</summary>
</member>
<member name="P:XCode.Configuration.FieldItem.Length">
<summary>长度</summary>
</member>
<member name="P:XCode.Configuration.FieldItem.IsDataObjectField">
<summary>是否数据绑定列</summary>
</member>
<member name="P:XCode.Configuration.FieldItem.IsDynamic">
<summary>是否动态字段</summary>
</member>
<member name="F:XCode.Configuration.FieldItem.COLUMNNAME_FLAG">
<summary>字段名要过滤掉的标识符,考虑MSSQL、MySql、SQLite、Oracle等</summary>
</member>
<member name="P:XCode.Configuration.FieldItem.ColumnName">
<summary>用于数据绑定的字段名</summary>
<remarks>
默认使用BindColumn特性中指定的字段名,如果没有指定,则使用属性名。
字段名可能两边带有方括号等标识符
</remarks>
</member>
<member name="P:XCode.Configuration.FieldItem.ReadOnly">
<summary>是否只读</summary>
<remarks>set { _ReadOnly = value; } 放出只读属性的设置,比如在编辑页面的时候,有的字段不能修改 如修改用户时 不能修改用户名</remarks>
</member>
<member name="P:XCode.Configuration.FieldItem.Table">
<summary>表</summary>
</member>
<member name="P:XCode.Configuration.FieldItem.Field">
<summary>字段</summary>
</member>
<member name="P:XCode.Configuration.FieldItem.Factory">
<summary>实体操作者</summary>
</member>
<member name="P:XCode.Configuration.FieldItem.FormatedName">
<summary>已格式化的字段名,可字节用于SQL中。主要用于处理关键字,比如MSSQL里面的[User]</summary>
</member>
<member name="P:XCode.Configuration.FieldItem.OriField">
<summary>跟当前字段有关系的原始字段</summary>
</member>
<member name="P:XCode.Configuration.FieldItem.Map">
<summary>获取映射特性</summary>
</member>
<member name="M:XCode.Configuration.FieldItem.#ctor(XCode.Configuration.TableItem,System.Reflection.PropertyInfo)">
<summary>构造函数</summary>
<param name="table"></param>
<param name="property">属性</param>
</member>
<member name="M:XCode.Configuration.FieldItem.ToString">
<summary>已重载。</summary>
<returns></returns>
</member>
<member name="M:XCode.Configuration.FieldItem.Fill(XCode.DataAccessLayer.IDataColumn)">
<summary>填充到XField中去</summary>
<param name="field">字段</param>
</member>
<member name="M:XCode.Configuration.FieldItem.CreateFormat(System.String,System.Object)">
<summary>建立表达式</summary>
<param name="format"></param>
<param name="value">数值</param>
<returns></returns>
</member>
<member name="M:XCode.Configuration.FieldItem.Equal(System.Object)">
<summary>等于</summary>
<param name="value">数值</param>
<returns></returns>
</member>
<member name="M:XCode.Configuration.FieldItem.NotEqual(System.Object)">
<summary>不等于</summary>
<param name="value">数值</param>
<returns></returns>
</member>
<member name="M:XCode.Configuration.FieldItem.StartsWith(System.String)">
<summary>以某个字符串开始,{0}%操作</summary>
<remarks>空参数不参与表达式操作,不生成该部分SQL拼接</remarks>
<param name="value">数值</param>
<returns></returns>
</member>
<member name="M:XCode.Configuration.FieldItem.EndsWith(System.String)">
<summary>以某个字符串结束,%{0}操作</summary>
<remarks>空参数不参与表达式操作,不生成该部分SQL拼接</remarks>
<param name="value">数值</param>
<returns></returns>
</member>
<member name="M:XCode.Configuration.FieldItem.Contains(System.String)">
<summary>包含某个字符串,%{0}%操作</summary>
<remarks>空参数不参与表达式操作,不生成该部分SQL拼接</remarks>
<param name="value">数值</param>
<returns></returns>
</member>
<member name="M:XCode.Configuration.FieldItem.NotContains(System.String)">
<summary>包含某个字符串,%{0}%操作</summary>
<remarks>空参数不参与表达式操作,不生成该部分SQL拼接</remarks>
<param name="value">数值</param>
<returns></returns>
</member>
<member name="M:XCode.Configuration.FieldItem.In(System.Collections.IEnumerable)">
<summary>In操作</summary>
<remarks>空参数不参与表达式操作,不生成该部分SQL拼接。只有一项时转为等于</remarks>
<param name="value">枚举数据,会转化为字符串</param>
<returns></returns>
</member>
<member name="M:XCode.Configuration.FieldItem.NotIn(System.Collections.IEnumerable)">
<summary>NotIn操作</summary>
<remarks>空参数不参与表达式操作,不生成该部分SQL拼接。只有一项时修改为不等于</remarks>
<param name="value">数值</param>
<returns></returns>
</member>
<member name="M:XCode.Configuration.FieldItem.In(System.String)">
<summary>In操作。直接使用字符串可能有注入风险</summary>
<remarks>空参数不参与表达式操作,不生成该部分SQL拼接</remarks>
<param name="child">逗号分割的数据。可能有注入风险</param>
<returns></returns>
</member>
<member name="M:XCode.Configuration.FieldItem.NotIn(System.String)">
<summary>NotIn操作。直接使用字符串可能有注入风险</summary>
<remarks>空参数不参与表达式操作,不生成该部分SQL拼接</remarks>
<param name="child">数值</param>
<returns></returns>
</member>
<member name="M:XCode.Configuration.FieldItem.In(XCode.DataAccessLayer.SelectBuilder)">
<summary>In操作。直接使用字符串可能有注入风险</summary>
<remarks>空参数不参与表达式操作,不生成该部分SQL拼接</remarks>
<param name="builder">逗号分割的数据。可能有注入风险</param>
<returns></returns>
</member>
<member name="M:XCode.Configuration.FieldItem.NotIn(XCode.DataAccessLayer.SelectBuilder)">
<summary>NotIn操作。直接使用字符串可能有注入风险</summary>
<remarks>空参数不参与表达式操作,不生成该部分SQL拼接</remarks>
<param name="builder">数值</param>
<returns></returns>
</member>
<member name="M:XCode.Configuration.FieldItem.IsNull">
<summary>IsNull操作,不为空,一般用于字符串,但不匹配0长度字符串</summary>
<returns></returns>
</member>
<member name="M:XCode.Configuration.FieldItem.NotIsNull">
<summary>NotIn操作</summary>
<returns></returns>
</member>
<member name="M:XCode.Configuration.FieldItem.IsNullOrEmpty">
<summary>IsNullOrEmpty操作,用于空或者0长度字符串</summary>
<returns></returns>
</member>
<member name="M:XCode.Configuration.FieldItem.NotIsNullOrEmpty">
<summary>NotIsNullOrEmpty操作</summary>
<returns></returns>
</member>
<member name="M:XCode.Configuration.FieldItem.IsTrue(System.Nullable{System.Boolean})">
<summary>是否True或者False/Null,参数决定两组之一</summary>
<param name="flag"></param>
<returns></returns>
</member>
<member name="M:XCode.Configuration.FieldItem.IsFalse(System.Nullable{System.Boolean})">
<summary>是否False或者True/Null,参数决定两组之一</summary>
<param name="flag"></param>
<returns></returns>
</member>
<member name="M:XCode.Configuration.FieldItem.op_GreaterThan(XCode.Configuration.FieldItem,System.Object)">
<summary>大于</summary>
<param name="field">字段</param>
<param name="value">数值</param>
<returns></returns>
</member>
<member name="M:XCode.Configuration.FieldItem.op_LessThan(XCode.Configuration.FieldItem,System.Object)">
<summary>小于</summary>
<param name="field">字段</param>
<param name="value">数值</param>
<returns></returns>
</member>
<member name="M:XCode.Configuration.FieldItem.op_GreaterThanOrEqual(XCode.Configuration.FieldItem,System.Object)">
<summary>大于等于</summary>
<param name="field">字段</param>
<param name="value">数值</param>
<returns></returns>
</member>
<member name="M:XCode.Configuration.FieldItem.op_LessThanOrEqual(XCode.Configuration.FieldItem,System.Object)">
<summary>小于等于</summary>
<param name="field">字段</param>
<param name="value">数值</param>
<returns></returns>
</member>
<member name="M:XCode.Configuration.FieldItem.op_Implicit(XCode.Configuration.FieldItem)~System.String">
<summary>类型转换</summary>
<param name="obj"></param>
<returns></returns>
</member>
<member name="T:XCode.Configuration.Field">
<summary>继承FieldItem,仅仅为了重载==和!=运算符</summary>
</member>
<member name="M:XCode.Configuration.Field.#ctor(XCode.Configuration.TableItem,System.Reflection.PropertyInfo)">
<summary>构造函数</summary>
<param name="table"></param>
<param name="property">属性</param>
</member>
<member name="M:XCode.Configuration.Field.op_Equality(XCode.Configuration.Field,System.Object)">
<summary>等于</summary>
<param name="field">字段</param>
<param name="value">数值</param>
<returns></returns>
</member>
<member name="M:XCode.Configuration.Field.op_Inequality(XCode.Configuration.Field,System.Object)">
<summary>不等于</summary>
<param name="field">字段</param>
<param name="value">数值</param>
<returns></returns>
</member>
<member name="M:XCode.Configuration.Field.GetHashCode">
<summary>重写一下</summary>
<returns></returns>
</member>
<member name="M:XCode.Configuration.Field.Equals(System.Object)">
<summary>重写一下</summary>
<param name="obj"></param>
<returns></returns>
</member>
<member name="M:XCode.Configuration.Field.op_Implicit(XCode.Configuration.Field)~System.String">
<summary>类型转换</summary>
<param name="obj"></param>
<returns></returns>
</member>
<member name="T:XCode.IDataRowEntityAccessor">
<summary>在数据行和实体类之间映射数据的接口</summary>
</member>
<member name="M:XCode.IDataRowEntityAccessor.LoadData``1(System.Data.DataTable)">
<summary>加载数据表。无数据时返回空集合而不是null。</summary>
<param name="dt">数据表</param>
<returns>实体数组</returns>
</member>
<member name="M:XCode.IDataRowEntityAccessor.LoadData``1(NewLife.Data.DbSet)">
<summary>加载数据表。无数据时返回空集合而不是null。</summary>
<param name="ds">数据表</param>
<returns>实体数组</returns>
</member>
<member name="M:XCode.IDataRowEntityAccessor.LoadData``1(System.Data.IDataReader)">
<summary>加载数据表。无数据时返回空集合而不是null。</summary>
<param name="dr">数据读取器</param>
<returns>实体数组</returns>
</member>
<member name="T:XCode.IDataRowEntityAccessorProvider">
<summary>在数据行和实体类之间映射数据接口的提供者</summary>
</member>
<member name="M:XCode.IDataRowEntityAccessorProvider.CreateDataRowEntityAccessor(System.Type)">
<summary>创建实体类的数据行访问器</summary>
<param name="entityType"></param>
<returns></returns>
</member>
<member name="M:XCode.DataRowEntityAccessorProvider.CreateDataRowEntityAccessor(System.Type)">
<summary>创建实体类的数据行访问器</summary>
<param name="entityType"></param>
<returns></returns>
</member>
<member name="M:XCode.DataRowEntityAccessor.LoadData``1(System.Data.DataTable)">
<summary>加载数据表。无数据时返回空集合而不是null。</summary>
<param name="dt">数据表</param>
<returns>实体数组</returns>
</member>
<member name="M:XCode.DataRowEntityAccessor.LoadData``1(NewLife.Data.DbSet)">
<summary>加载数据表。无数据时返回空集合而不是null。</summary>
<param name="ds">数据表</param>
<returns>实体数组</returns>
</member>
<member name="M:XCode.DataRowEntityAccessor.LoadData``1(System.Data.IDataReader)">
<summary>加载数据表。无数据时返回空集合而不是null。</summary>
<param name="dr">数据读取器</param>
<returns>实体数组</returns>
</member>
<member name="T:XCode.EntityBase">
<summary>数据实体基类的基类</summary>
</member>
<member name="F:XCode.EntityBase._IsFromDatabase">
<summary>如果实体来自数据库,在给数据属性赋相同值时,不改变脏数据,其它情况均改变脏数据</summary>
</member>
<member name="M:XCode.EntityBase.OnPropertyChanging(System.String,System.Object)">
<summary>属性改变。重载时记得调用基类的该方法,以设置脏数据属性,否则数据将无法Update到数据库。</summary>
<param name="fieldName">字段名</param>
<param name="newValue">新属性值</param>
<returns>是否允许改变</returns>
</member>
<member name="M:XCode.EntityBase.CheckEqual(System.Object,System.Object)">
<summary>检查相等,主要特殊处理时间相等</summary>
<param name="v1"></param>
<param name="v2"></param>
<returns></returns>
</member>
<member name="M:XCode.EntityBase.OnPropertyChanged(System.String)">
<summary>属性改变。重载时记得调用基类的该方法,以设置脏数据属性,否则数据将无法Update到数据库。</summary>
<param name="fieldName">字段名</param>
</member>
<member name="M:XCode.EntityBase.InitData">
<summary>首次连接数据库时初始化数据,仅用于实体类重载,用户不应该调用该方法</summary>
</member>
<member name="M:XCode.EntityBase.OnLoad">
<summary>填充数据完成时调用。默认设定标记<see cref="F:XCode.EntityBase._IsFromDatabase"/></summary>
</member>
<member name="M:XCode.EntityBase.Insert">
<summary>把该对象持久化到数据库</summary>
<returns></returns>
</member>
<member name="M:XCode.EntityBase.Update">
<summary>更新数据库</summary>
<returns></returns>
</member>
<member name="M:XCode.EntityBase.Delete">
<summary>从数据库中删除该对象</summary>
<returns></returns>
</member>
<member name="M:XCode.EntityBase.Save">
<summary>保存。根据主键检查数据库中是否已存在该对象,再决定调用Insert或Update</summary>
<returns></returns>
</member>
<member name="M:XCode.EntityBase.SaveWithoutValid">
<summary>不需要验证的保存</summary>
<returns></returns>
</member>
<member name="M:XCode.EntityBase.SaveAsync(System.Int32)">
<summary>异步保存。实现延迟保存,大事务保存。主要面向日志表和频繁更新的在线记录表</summary>
<param name="msDelay">延迟保存的时间。默认0ms近实时保存</param>
<returns>是否成功加入异步队列</returns>
</member>
<member name="P:XCode.EntityBase.Item(System.String)">
<summary>
获取/设置 字段值。
一个索引,反射实现。
派生实体类可重写该索引,以避免发射带来的性能损耗。
基类已经实现了通用的快速访问,但是这里仍然重写,以增加控制,
比如字段名是属性名前面加上_,并且要求是实体字段才允许这样访问,否则一律按属性处理。
</summary>
<param name="name">字段名</param>
<returns></returns>
</member>
<member name="M:XCode.EntityBase.SetItem(System.String,System.Object)">
<summary>设置字段值,该方法影响脏数据。</summary>
<param name="name">字段名</param>
<param name="value">值</param>
<returns>返回是否成功设置了数据</returns>
</member>
<member name="M:XCode.EntityBase.SetNoDirtyItem(System.String,System.Object)">
<summary>设置脏数据项。如果某个键存在并且数据没有脏,则设置</summary>
<param name="name"></param>
<param name="value"></param>
<returns>返回是否成功设置了数据</returns>
</member>
<member name="M:XCode.EntityBase.Clone">
<summary>创建当前对象的克隆对象,仅拷贝基本字段</summary>
<returns></returns>
</member>
<member name="M:XCode.EntityBase.XCode#IEntity#CloneEntity(System.Boolean)">
<summary>克隆实体。创建当前对象的克隆对象,仅拷贝基本字段</summary>
<param name="setDirty">是否设置脏数据</param>
<returns></returns>
</member>
<member name="M:XCode.EntityBase.CloneEntityInternal(System.Boolean)">
<summary>克隆实体</summary>
<param name="setDirty"></param>
<returns></returns>
</member>
<member name="M:XCode.EntityBase.CopyFrom(XCode.IEntity,System.Boolean)">
<summary>复制来自指定实体的成员,可以是不同类型的实体,只复制共有的基本字段,影响脏数据</summary>
<param name="entity">来源实体对象</param>
<param name="setDirty">是否设置脏数据</param>
<returns>实际复制成员数</returns>
</member>
<member name="P:XCode.EntityBase.Dirtys">
<summary>脏属性。存储哪些属性的数据被修改过了。</summary>
</member>
<member name="P:XCode.EntityBase.XCode#IEntity#Dirtys">
<summary>脏属性。存储哪些属性的数据被修改过了。</summary>
</member>
<member name="M:XCode.EntityBase.SetDirty(System.Boolean)">
<summary>设置所有数据的脏属性</summary>
<param name="isDirty">改变脏属性的属性个数</param>
<returns></returns>
</member>
<member name="P:XCode.EntityBase.Extends">
<summary>扩展属性</summary>
</member>
<member name="P:XCode.EntityBase.Addition">
<summary>累加</summary>
</member>
<member name="P:XCode.EntityBase.IsNullKey">
<summary>主键是否为空</summary>
</member>
<member name="M:XCode.EntityBase.XCode#IEntity#SetNullKey">
<summary>设置主键为空。Save将调用Insert</summary>
</member>
<member name="M:XCode.EntityBase.XCode#IEntity#EqualTo(XCode.IEntity)">
<summary>判断两个实体是否相等。有可能是同一条数据的两个实体对象</summary>
<param name="entity"></param>
<returns></returns>
</member>
<member name="T:XCode.EntityTransaction`1">
<summary>实体事务区域。配合using使用,进入区域事务即开始,直到<see cref="M:XCode.EntityTransaction.Commit"/>提交,否则离开区域时回滚。</summary>
<typeparam name="TEntity"></typeparam>
<example>
<code>
using (var et = new EntityTransaction<Administrator>())
{
var admin = Administrator.FindByName("admin");
admin.Logins++;
admin.Update();
et.Commit();
}
</code>
</example>
</member>
<member name="M:XCode.EntityTransaction`1.#ctor">
<summary>为实体类实例化一个事务区域</summary>
</member>
<member name="M:XCode.EntityTransaction`1.Commit">
<summary>提交事务</summary>
</member>
<member name="M:XCode.EntityTransaction`1.Rollback">
<summary>回滚事务</summary>
</member>
<member name="T:XCode.EntityTransaction">
<summary>实体事务区域。配合using使用,进入区域事务即开始,直到<see cref="M:XCode.EntityTransaction.Commit"/>提交,否则离开区域时回滚。</summary>
<example>
<code>
using (var et = new EntityTransaction(DAL.Create("Common")))
{
var admin = Administrator.FindByName("admin");
admin.Logins++;
admin.Update();
et.Commit();
}
</code>
</example>
</member>
<member name="F:XCode.EntityTransaction.hasStart">
<summary>是否已经开始事务</summary>
</member>
<member name="F:XCode.EntityTransaction.hasFinish">
<summary>是否已完成事务</summary>
</member>
<member name="P:XCode.EntityTransaction.Session">
<summary>会话</summary>
</member>
<member name="M:XCode.EntityTransaction.#ctor(XCode.DataAccessLayer.IDbSession,System.Data.IsolationLevel)">
<summary>用数据库会话来实例化一个事务区域</summary>
<param name="session"></param>
<param name="level">事务隔离等级</param>
</member>
<member name="M:XCode.EntityTransaction.#ctor(XCode.DataAccessLayer.DAL)">
<summary>用数据访问对象来实例化一个事务区域</summary>
<param name="dal"></param>
</member>
<member name="M:XCode.EntityTransaction.#ctor(XCode.IEntityOperate)">
<summary>用实体操作接口来实例化一个事务区域</summary>
<param name="eop"></param>
</member>
<member name="M:XCode.EntityTransaction.OnDispose(System.Boolean)">
<summary>子类重载实现资源释放逻辑时必须首先调用基类方法</summary>
<param name="disposing">从Dispose调用(释放所有资源)还是析构函数调用(释放非托管资源)。
因为该方法只会被调用一次,所以该参数的意义不太大。</param>
</member>
<member name="M:XCode.EntityTransaction.Commit">
<summary>提交事务</summary>
</member>
<member name="M:XCode.EntityTransaction.Rollback">
<summary>回滚事务</summary>
</member>
<member name="T:XCode.IEntityPersistence">
<summary>实体持久化接口。可通过实现该接口来自定义实体类持久化行为。</summary>
</member>
<member name="M:XCode.IEntityPersistence.Insert(XCode.IEntity)">
<summary>插入</summary>
<param name="entity"></param>
<returns></returns>
</member>
<member name="M:XCode.IEntityPersistence.Update(XCode.IEntity)">
<summary>更新</summary>
<param name="entity"></param>
<returns></returns>
</member>
<member name="M:XCode.IEntityPersistence.Delete(XCode.IEntity)">
<summary>删除</summary>
<param name="entity"></param>
<returns></returns>
</member>
<member name="M:XCode.IEntityPersistence.Insert(XCode.IEntityOperate,System.String[],System.Object[])">
<summary>把一个实体对象持久化到数据库</summary>
<param name="factory">实体工厂</param>
<param name="names">更新属性列表</param>
<param name="values">更新值列表</param>
<returns>返回受影响的行数</returns>
</member>
<member name="M:XCode.IEntityPersistence.Update(XCode.IEntityOperate,System.String,System.String)">
<summary>更新一批实体数据</summary>
<param name="factory">实体工厂</param>
<param name="setClause">要更新的项和数据</param>
<param name="whereClause">指定要更新的实体</param>
<returns></returns>
</member>
<member name="M:XCode.IEntityPersistence.Update(XCode.IEntityOperate,System.String[],System.Object[],System.String[],System.Object[])">
<summary>更新一批实体数据</summary>
<param name="factory">实体工厂</param>
<param name="setNames">更新属性列表</param>
<param name="setValues">更新值列表</param>
<param name="whereNames">条件属性列表</param>
<param name="whereValues">条件值列表</param>
<returns>返回受影响的行数</returns>
</member>
<member name="M:XCode.IEntityPersistence.Delete(XCode.IEntityOperate,System.String)">
<summary>从数据库中删除指定条件的实体对象。</summary>
<param name="factory">实体工厂</param>
<param name="whereClause">限制条件</param>
<returns></returns>
</member>
<member name="M:XCode.IEntityPersistence.Delete(XCode.IEntityOperate,System.String[],System.Object[])">
<summary>从数据库中删除指定属性列表和值列表所限定的实体对象。</summary>
<param name="factory">实体工厂</param>
<param name="names">属性列表</param>
<param name="values">值列表</param>
<returns></returns>
</member>
<member name="M:XCode.IEntityPersistence.GetPrimaryCondition(XCode.IEntity)">
<summary>获取主键条件</summary>
<param name="entity"></param>
<returns></returns>
</member>
<member name="M:XCode.IEntityPersistence.GetSql(XCode.IEntity,System.ComponentModel.DataObjectMethodType)">
<summary>把SQL模版格式化为SQL语句</summary>
<param name="entity">实体对象</param>
<param name="methodType"></param>
<returns>SQL字符串</returns>
</member>
<member name="T:XCode.EntityPersistence">
<summary>默认实体持久化</summary>
</member>
<member name="M:XCode.EntityPersistence.Insert(XCode.IEntity)">
<summary>插入</summary>
<param name="entity"></param>
<returns></returns>
</member>
<member name="M:XCode.EntityPersistence.Update(XCode.IEntity)">
<summary>更新</summary>
<param name="entity"></param>
<returns></returns>
</member>
<member name="M:XCode.EntityPersistence.Delete(XCode.IEntity)">
<summary>删除</summary>
<param name="entity"></param>
<returns></returns>
</member>
<member name="M:XCode.EntityPersistence.Insert(XCode.IEntityOperate,System.String[],System.Object[])">
<summary>把一个实体对象持久化到数据库</summary>
<param name="factory">实体工厂</param>
<param name="names">更新属性列表</param>
<param name="values">更新值列表</param>
<returns>返回受影响的行数</returns>
</member>
<member name="M:XCode.EntityPersistence.Update(XCode.IEntityOperate,System.String,System.String)">
<summary>更新一批实体数据</summary>
<param name="factory">实体工厂</param>
<param name="setClause">要更新的项和数据</param>
<param name="whereClause">指定要更新的实体</param>
<returns></returns>
</member>
<member name="M:XCode.EntityPersistence.Update(XCode.IEntityOperate,System.String[],System.Object[],System.String[],System.Object[])">
<summary>更新一批实体数据</summary>
<param name="factory">实体工厂</param>
<param name="setNames">更新属性列表</param>
<param name="setValues">更新值列表</param>
<param name="whereNames">条件属性列表</param>
<param name="whereValues">条件值列表</param>
<returns>返回受影响的行数</returns>
</member>
<member name="M:XCode.EntityPersistence.Delete(XCode.IEntityOperate,System.String)">
<summary>从数据库中删除指定条件的实体对象。</summary>
<param name="factory">实体工厂</param>
<param name="whereClause">限制条件</param>
<returns></returns>
</member>
<member name="M:XCode.EntityPersistence.Delete(XCode.IEntityOperate,System.String[],System.Object[])">
<summary>从数据库中删除指定属性列表和值列表所限定的实体对象。</summary>
<param name="factory">实体工厂</param>
<param name="names">属性列表</param>
<param name="values">值列表</param>
<returns></returns>
</member>
<member name="M:XCode.EntityPersistence.GetSql(XCode.IEntity,System.ComponentModel.DataObjectMethodType)">
<summary>把SQL模版格式化为SQL语句</summary>
<param name="entity">实体对象</param>
<param name="methodType"></param>
<returns>SQL字符串</returns>
</member>
<member name="M:XCode.EntityPersistence.SQL(XCode.IEntity,System.ComponentModel.DataObjectMethodType,System.Data.IDataParameter[]@)">
<summary>把SQL模版格式化为SQL语句</summary>
<param name="entity">实体对象</param>
<param name="methodType"></param>
<param name="parameters">参数数组</param>
<returns>SQL字符串</returns>
</member>
<member name="M:XCode.EntityPersistence.GetPrimaryCondition(XCode.IEntity)">
<summary>获取主键条件</summary>
<param name="entity"></param>
<returns></returns>
</member>
<member name="M:XCode.EntityPersistence.DefaultCondition(XCode.IEntity)">
<summary>
默认条件。
若有标识列,则使用一个标识列作为条件;
如有主键,则使用全部主键作为条件。
</summary>
<param name="entity">实体对象</param>
<returns>条件</returns>
</member>
<member name="T:XCode.Exceptions.XDbException">
<summary>数据访问层异常</summary>
</member>
<member name="P:XCode.Exceptions.XDbException.Database">
<summary>数据库</summary>
</member>
<member name="M:XCode.Exceptions.XDbException.#ctor(XCode.DataAccessLayer.IDatabase)">
<summary>初始化</summary>
<param name="db"></param>
</member>
<member name="M:XCode.Exceptions.XDbException.#ctor(XCode.DataAccessLayer.IDatabase,System.String)">
<summary>初始化</summary>
<param name="db"></param>
<param name="message"></param>
</member>
<member name="M:XCode.Exceptions.XDbException.#ctor(XCode.DataAccessLayer.IDatabase,System.String,System.Exception)">
<summary>初始化</summary>
<param name="db"></param>
<param name="message"></param>
<param name="innerException"></param>
</member>
<member name="M:XCode.Exceptions.XDbException.#ctor(XCode.DataAccessLayer.IDatabase,System.Exception)">
<summary>初始化</summary>
<param name="db"></param>
<param name="innerException"></param>
</member>
<member name="T:XCode.Exceptions.XDbMetaDataException">
<summary>数据库元数据异常</summary>
</member>
<member name="P:XCode.Exceptions.XDbMetaDataException.MetaData">
<summary>数据库元数据</summary>
</member>
<member name="M:XCode.Exceptions.XDbMetaDataException.#ctor(XCode.DataAccessLayer.IMetaData)">
<summary>初始化</summary>
<param name="metadata"></param>
</member>
<member name="M:XCode.Exceptions.XDbMetaDataException.#ctor(XCode.DataAccessLayer.IMetaData,System.String)">
<summary>初始化</summary>
<param name="metadata"></param>
<param name="message"></param>
</member>
<member name="M:XCode.Exceptions.XDbMetaDataException.#ctor(XCode.DataAccessLayer.IMetaData,System.String,System.Exception)">
<summary>初始化</summary>
<param name="metadata"></param>
<param name="message"></param>
<param name="innerException"></param>
</member>
<member name="M:XCode.Exceptions.XDbMetaDataException.#ctor(XCode.DataAccessLayer.IMetaData,System.Exception)">
<summary>初始化</summary>
<param name="metadata"></param>
<param name="innerException"></param>
</member>
<member name="T:XCode.Exceptions.XDbSessionException">
<summary>数据访问层异常</summary>
</member>
<member name="P:XCode.Exceptions.XDbSessionException.Session">
<summary>数据库会话</summary>
</member>
<member name="M:XCode.Exceptions.XDbSessionException.#ctor(XCode.DataAccessLayer.IDbSession)">
<summary>初始化</summary>
<param name="session"></param>
</member>
<member name="M:XCode.Exceptions.XDbSessionException.#ctor(XCode.DataAccessLayer.IDbSession,System.String)">
<summary>初始化</summary>
<param name="session"></param>
<param name="message"></param>
</member>
<member name="M:XCode.Exceptions.XDbSessionException.#ctor(XCode.DataAccessLayer.IDbSession,System.String,System.Exception)">
<summary>初始化</summary>
<param name="session"></param>
<param name="message"></param>
<param name="innerException"></param>
</member>
<member name="M:XCode.Exceptions.XDbSessionException.#ctor(XCode.DataAccessLayer.IDbSession,System.Exception)">
<summary>初始化</summary>
<param name="session"></param>
<param name="innerException"></param>
</member>
<member name="T:XCode.Exceptions.XSqlException">
<summary>数据访问层SQL异常</summary>
</member>
<member name="P:XCode.Exceptions.XSqlException.Sql">
<summary>SQL语句</summary>
</member>
<member name="M:XCode.Exceptions.XSqlException.#ctor(System.String,XCode.DataAccessLayer.IDbSession)">
<summary>初始化</summary>
<param name="sql"></param>
<param name="session"></param>
</member>
<member name="M:XCode.Exceptions.XSqlException.#ctor(System.String,XCode.DataAccessLayer.IDbSession,System.String)">
<summary>初始化</summary>
<param name="sql"></param>
<param name="session"></param>
<param name="message"></param>
</member>
<member name="M:XCode.Exceptions.XSqlException.#ctor(System.String,XCode.DataAccessLayer.IDbSession,System.String,System.Exception)">
<summary>初始化</summary>
<param name="sql"></param>
<param name="session"></param>
<param name="message"></param>
<param name="innerException"></param>
</member>
<member name="M:XCode.Exceptions.XSqlException.#ctor(System.String,XCode.DataAccessLayer.IDbSession,System.Exception)">
<summary>初始化</summary>
<param name="sql"></param>
<param name="session"></param>
<param name="innerException"></param>
</member>
<member name="M:XCode.Exceptions.XSqlException.GetObjectData(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext)">
<summary>从序列化信息中读取Sql</summary>
<param name="info"></param>
<param name="context"></param>
</member>
<member name="T:XCode.XCodeException">
<summary>XCode异常</summary>
</member>
<member name="M:XCode.XCodeException.#ctor">
<summary>初始化</summary>
</member>
<member name="M:XCode.XCodeException.#ctor(System.String)">
<summary>初始化</summary>
<param name="message"></param>
</member>
<member name="M:XCode.XCodeException.#ctor(System.String,System.Object[])">
<summary>初始化</summary>
<param name="format"></param>
<param name="args"></param>
</member>
<member name="M:XCode.XCodeException.#ctor(System.String,System.Exception)">
<summary>初始化</summary>
<param name="message"></param>
<param name="innerException"></param>
</member>
<member name="M:XCode.XCodeException.#ctor(System.Exception)">
<summary>初始化</summary>
<param name="innerException"></param>
</member>
<member name="T:XCode.DirtyCollection">
<summary>脏属性集合</summary>
<remarks>实现IDictionary接口,为了让使用者能直接使用重载了的索引器</remarks>
</member>
<member name="P:XCode.DirtyCollection.Item(System.String)">
<summary>获取或设置与指定的属性是否有脏数据。</summary>
<param name="item"></param>
<returns></returns>
</member>
<member name="T:XCode.Entity`1">
<summary>数据实体类基类。所有数据实体类都必须继承该类。</summary>
</member>
<member name="M:XCode.Entity`1.#cctor">
<summary>静态构造</summary>
</member>
<member name="M:XCode.Entity`1.CreateInstance(System.Boolean)">
<summary>创建实体。</summary>
<remarks>
可以重写改方法以实现实体对象的一些初始化工作。
切记,写为实例方法仅仅是为了方便重载,所要返回的实例绝对不会是当前实例。
</remarks>
<param name="forEdit">是否为了编辑而创建,如果是,可以再次做一些相关的初始化工作</param>
<returns></returns>
</member>
<member name="M:XCode.Entity`1.LoadData(System.Data.DataSet)">
<summary>加载记录集。无数据时返回空集合而不是null。</summary>
<param name="ds">记录集</param>
<returns>实体数组</returns>
</member>
<member name="M:XCode.Entity`1.LoadData(System.Data.DataTable)">
<summary>加载数据表。无数据时返回空集合而不是null。</summary>
<param name="dt">数据表</param>
<returns>实体数组</returns>
</member>
<member name="M:XCode.Entity`1.LoadData(NewLife.Data.DbSet)">
<summary>加载数据表。无数据时返回空集合而不是null。</summary>
<param name="ds">数据表</param>
<returns>实体数组</returns>
</member>
<member name="M:XCode.Entity`1.LoadData(System.Data.IDataReader)">
<summary>加载数据表。无数据时返回空集合而不是null。</summary>
<param name="dr">数据读取器</param>
<returns>实体数组</returns>
</member>
<member name="M:XCode.Entity`1.Insert">
<summary>插入数据,<see cref="M:XCode.Entity`1.Valid(System.Boolean)"/>后,在事务中调用<see cref="M:XCode.Entity`1.OnInsert"/>。</summary>
<returns></returns>
</member>
<member name="M:XCode.Entity`1.OnInsert">
<summary>把该对象持久化到数据库,添加/更新实体缓存。</summary>
<returns></returns>
</member>
<member name="M:XCode.Entity`1.Update">
<summary>更新数据,<see cref="M:XCode.Entity`1.Valid(System.Boolean)"/>后,在事务中调用<see cref="M:XCode.Entity`1.OnUpdate"/>。</summary>
<returns></returns>
</member>
<member name="M:XCode.Entity`1.OnUpdate">
<summary>更新数据库,同时更新实体缓存</summary>
<returns></returns>
</member>
<member name="M:XCode.Entity`1.Delete">
<summary>删除数据,通过在事务中调用OnDelete实现。</summary>
<remarks>
删除时,如果有且仅有主键有脏数据,则可能是ObjectDataSource之类的删除操作。
该情况下,实体类没有完整的信息(仅有主键信息),将会导致无法通过扩展属性删除附属数据。
如果需要避开该机制,请清空脏数据。
</remarks>
<returns></returns>
</member>
<member name="M:XCode.Entity`1.OnDelete">
<summary>从数据库中删除该对象,同时从实体缓存中删除</summary>
<returns></returns>
</member>
<member name="M:XCode.Entity`1.Save">
<summary>保存。根据主键检查数据库中是否已存在该对象,再决定调用Insert或Update</summary>
<returns></returns>
</member>
<member name="M:XCode.Entity`1.SaveWithoutValid">
<summary>不需要验证的保存,不执行Valid,一般用于快速导入数据</summary>
<returns></returns>
</member>
<member name="M:XCode.Entity`1.SaveAsync(System.Int32)">
<summary>异步保存。实现延迟保存,大事务保存。主要面向日志表和频繁更新的在线记录表</summary>
<param name="msDelay">延迟保存的时间。默认0ms近实时保存</param>
<remarks>
调用平均耗时190.86ns,IPModule占38.89%,TimeModule占16.31%,UserModule占7.20%,Valid占14.36%
</remarks>
<returns>是否成功加入异步队列,实体对象已存在于队列中则返回false</returns>
</member>
<member name="M:XCode.Entity`1.Valid(System.Boolean)">
<summary>验证数据,通过抛出异常的方式提示验证失败。</summary>
<remarks>建议重写者调用基类的实现,因为基类根据数据字段的唯一索引进行数据验证。</remarks>
<param name="isNew">是否新数据</param>
</member>
<member name="M:XCode.Entity`1.Exist(System.String[])">
<summary>根据指定键检查数据,返回数据是否已存在</summary>
<param name="names"></param>
<returns></returns>
</member>
<member name="M:XCode.Entity`1.CheckExist(System.String[])">
<summary>根据指定键检查数据是否已存在,若已存在,抛出ArgumentOutOfRangeException异常</summary>
<param name="names"></param>
</member>
<member name="M:XCode.Entity`1.CheckExist(System.Boolean,System.String[])">
<summary>根据指定键检查数据是否已存在,若已存在,抛出ArgumentOutOfRangeException异常</summary>
<param name="isNew">是否新数据</param>
<param name="names"></param>
</member>
<member name="M:XCode.Entity`1.Exist(System.Boolean,System.String[])">
<summary>根据指定键检查数据,返回数据是否已存在</summary>
<param name="isNew">是否新数据</param>
<param name="names"></param>
<returns></returns>
</member>
<member name="M:XCode.Entity`1.Find(System.String,System.Object)">
<summary>根据属性以及对应的值,查找单个实体</summary>
<param name="name">属性名称</param>
<param name="value">属性值</param>
<returns></returns>
</member>
<member name="M:XCode.Entity`1.Find(System.String[],System.Object[])">
<summary>根据属性列表以及对应的值列表,查找单个实体</summary>
<param name="names">属性名称集合</param>
<param name="values">属性值集合</param>
<returns></returns>
</member>
<member name="M:XCode.Entity`1.FindUnique(XCode.Expression)">
<summary>根据条件查找唯一的单个实体</summary>
根据条件查找唯一的单个实体,因为是唯一的,所以不需要分页和排序。
如果不确定是否唯一,一定不要调用该方法,否则会返回大量的数据。
<remarks>
</remarks>
<param name="where">查询条件</param>
<returns></returns>
</member>
<member name="M:XCode.Entity`1.Find(System.String)">
<summary>根据条件查找单个实体</summary>
<param name="whereClause">查询条件</param>
<returns></returns>
</member>
<member name="M:XCode.Entity`1.Find(XCode.Expression)">
<summary>根据条件查找单个实体</summary>
<param name="where">查询条件</param>
<returns></returns>
</member>
<member name="M:XCode.Entity`1.FindByKey(System.Object)">
<summary>根据主键查找单个实体</summary>
<param name="key">唯一主键的值</param>
<returns></returns>
</member>
<member name="M:XCode.Entity`1.FindByKeyForEdit(System.Object)">
<summary>根据主键查询一个实体对象用于表单编辑</summary>
<param name="key">唯一主键的值</param>
<returns></returns>
</member>
<member name="M:XCode.Entity`1.FindMin(System.String,XCode.Expression)">
<summary>查询指定字段的最小值</summary>
<param name="field">指定字段</param>
<param name="where">条件字句</param>
<returns></returns>
</member>
<member name="M:XCode.Entity`1.FindMax(System.String,XCode.Expression)">
<summary>查询指定字段的最大值</summary>
<param name="field">指定字段</param>
<param name="where">条件字句</param>
<returns></returns>
</member>
<member name="M:XCode.Entity`1.FindAll">
<summary>获取所有数据。获取大量数据时会非常慢,慎用。没有数据时返回空集合而不是null</summary>
<returns>实体数组</returns>
</member>
<member name="M:XCode.Entity`1.FindAll(System.String,System.Object)">
<summary>根据名称获取数据集。没有数据时返回空集合而不是null</summary>
<param name="name"></param>
<param name="value"></param>
<returns></returns>
</member>
<member name="M:XCode.Entity`1.FindAll(System.String[],System.Object[])">
<summary>根据属性列表以及对应的值列表,查找单个实体</summary>
<param name="names">属性名称集合</param>
<param name="values">属性值集合</param>
<returns></returns>
</member>
<member name="M:XCode.Entity`1.FindAll(System.String,System.String,System.String,System.Int64,System.Int64)">
<summary>最标准的查询数据。没有数据时返回空集合而不是null</summary>
<remarks>
最经典的批量查询,看这个Select @selects From Table Where @where Order By @order Limit @startRowIndex,@maximumRows,你就明白各参数的意思了。
</remarks>
<param name="where">条件字句,不带Where</param>
<param name="order">排序字句,不带Order By</param>
<param name="selects">查询列,默认null表示所有字段</param>
<param name="startRowIndex">开始行,0表示第一行</param>
<param name="maximumRows">最大返回行数,0表示所有行</param>
<returns>实体集</returns>
</member>
<member name="M:XCode.Entity`1.FindAll(XCode.Expression,System.String,System.String,System.Int64,System.Int64)">
<summary>最标准的查询数据。没有数据时返回空集合而不是null</summary>
<remarks>
最经典的批量查询,看这个Select @selects From Table Where @where Order By @order Limit @startRowIndex,@maximumRows,你就明白各参数的意思了。
</remarks>
<param name="where">条件字句,不带Where</param>
<param name="order">排序字句,不带Order By</param>
<param name="selects">查询列,默认null表示所有字段</param>
<param name="startRowIndex">开始行,0表示第一行</param>
<param name="maximumRows">最大返回行数,0表示所有行</param>
<returns>实体集</returns>
</member>
<member name="M:XCode.Entity`1.FindAll(XCode.Expression,NewLife.Data.PageParameter,System.String)">
<summary>同时查询满足条件的记录集和记录总数。没有数据时返回空集合而不是null</summary>
<param name="where">条件,不带Where</param>
<param name="page">分页排序参数,同时返回满足条件的总记录数</param>
<param name="selects">查询列,默认null表示所有字段</param>
<returns></returns>
</member>
<member name="M:XCode.Entity`1.FindAll(System.String)">
<summary>执行SQl获取数据集</summary>
<param name="sql">SQL语句</param>
<returns>实体集</returns>
</member>
<member name="M:XCode.Entity`1.FindAllWithCache">
<summary>查找所有缓存。没有数据时返回空集合而不是null</summary>
<returns></returns>
</member>
<member name="M:XCode.Entity`1.FindCount">
<summary>返回总记录数</summary>
<returns></returns>
</member>
<member name="M:XCode.Entity`1.FindCount(System.String,System.String,System.String,System.Int64,System.Int64)">
<summary>返回总记录数</summary>
<param name="where">条件,不带Where</param>
<param name="order">排序,不带Order By。这里无意义,仅仅为了保持与FindAll相同的方法签名</param>
<param name="selects">查询列。这里无意义,仅仅为了保持与FindAll相同的方法签名</param>
<param name="startRowIndex">开始行,0表示第一行。这里无意义,仅仅为了保持与FindAll相同的方法签名</param>
<param name="maximumRows">最大返回行数,0表示所有行。这里无意义,仅仅为了保持与FindAll相同的方法签名</param>
<returns>总行数</returns>
</member>
<member name="M:XCode.Entity`1.FindCount(XCode.Expression,System.String,System.String,System.Int64,System.Int64)">
<summary>返回总记录数</summary>
<param name="where">条件,不带Where</param>
<param name="order">排序,不带Order By。这里无意义,仅仅为了保持与FindAll相同的方法签名</param>
<param name="selects">查询列。这里无意义,仅仅为了保持与FindAll相同的方法签名</param>
<param name="startRowIndex">开始行,0表示第一行。这里无意义,仅仅为了保持与FindAll相同的方法签名</param>
<param name="maximumRows">最大返回行数,0表示所有行。这里无意义,仅仅为了保持与FindAll相同的方法签名</param>
<returns>总行数</returns>
</member>
<member name="M:XCode.Entity`1.FindSQL(System.String,System.String,System.String,System.Int32,System.Int32)">
<summary>获取查询SQL。主要用于构造子查询</summary>
<param name="where">条件,不带Where</param>
<param name="order">排序,不带Order By</param>
<param name="selects">查询列</param>
<param name="startRowIndex">开始行,0表示第一行</param>
<param name="maximumRows">最大返回行数,0表示所有行</param>
<returns>实体集</returns>
</member>
<member name="M:XCode.Entity`1.FindSQLWithKey(System.String)">
<summary>获取查询唯一键的SQL。比如Select ID From Table</summary>
<param name="where"></param>
<returns></returns>
</member>
<member name="M:XCode.Entity`1.Search(System.String,System.String,System.Int64,System.Int64)">
<summary>查询满足条件的记录集,分页、排序。没有数据时返回空集合而不是null</summary>
<param name="key">关键字</param>
<param name="order">排序,不带Order By</param>
<param name="startRowIndex">开始行,0表示第一行</param>
<param name="maximumRows">最大返回行数,0表示所有行</param>
<returns>实体集</returns>
</member>
<member name="M:XCode.Entity`1.SearchCount(System.String,System.String,System.Int64,System.Int64)">
<summary>查询满足条件的记录总数,分页和排序无效,带参数是因为ObjectDataSource要求它跟Search统一</summary>
<param name="key">关键字</param>
<param name="order">排序,不带Order By</param>
<param name="startRowIndex">开始行,0表示第一行</param>
<param name="maximumRows">最大返回行数,0表示所有行</param>
<returns>记录数</returns>
</member>
<member name="M:XCode.Entity`1.Search(System.String,NewLife.Data.PageParameter)">
<summary>同时查询满足条件的记录集和记录总数。没有数据时返回空集合而不是null</summary>
<param name="key"></param>
<param name="page">分页排序参数,同时返回满足条件的总记录数</param>
<returns></returns>
</member>
<member name="M:XCode.Entity`1.Search(System.DateTime,System.DateTime,System.String,NewLife.Data.PageParameter)">
<summary>同时查询满足条件的记录集和记录总数。没有数据时返回空集合而不是null</summary>
<param name="start">开始时间</param>
<param name="end">结束时间</param>
<param name="key">关键字</param>
<param name="page">分页排序参数,同时返回满足条件的总记录数</param>
<returns></returns>
</member>
<member name="M:XCode.Entity`1.SearchWhere(System.DateTime,System.DateTime,System.String,NewLife.Data.PageParameter)">
<summary>构造高级查询条件</summary>
<param name="start">开始时间</param>
<param name="end">结束时间</param>
<param name="key">关键字</param>
<param name="page">分页排序参数,同时返回满足条件的总记录数</param>
<returns></returns>
</member>
<member name="M:XCode.Entity`1.SearchWhereByKeys(System.String,XCode.Configuration.FieldItem[],System.Func{System.String,XCode.Configuration.FieldItem[],XCode.WhereExpression})">
<summary>根据空格分割的关键字集合构建查询条件</summary>
<param name="keys">空格分割的关键字集合</param>
<param name="fields">要查询的字段,默认为空表示查询所有字符串字段</param>
<param name="func">处理每一个查询关键字的回调函数</param>
<returns></returns>
</member>
<member name="M:XCode.Entity`1.SearchWhereByKey(System.String,XCode.Configuration.FieldItem[])">
<summary>构建关键字查询条件</summary>
<param name="key">关键字</param>
<param name="fields">要查询的字段,默认为空表示查询所有字符串字段</param>
<returns></returns>
</member>
<member name="M:XCode.Entity`1.Insert(`0)">
<summary>把一个实体对象持久化到数据库</summary>
<param name="obj">实体对象</param>
<returns>返回受影响的行数</returns>
</member>
<member name="M:XCode.Entity`1.Insert(System.String[],System.Object[])">
<summary>把一个实体对象持久化到数据库</summary>
<param name="names">更新属性列表</param>
<param name="values">更新值列表</param>
<returns>返回受影响的行数</returns>
</member>
<member name="M:XCode.Entity`1.Update(`0)">
<summary>把一个实体对象更新到数据库</summary>
<param name="obj">实体对象</param>
<returns>返回受影响的行数</returns>
</member>
<member name="M:XCode.Entity`1.Update(System.String,System.String)">
<summary>更新一批实体数据</summary>
<param name="setClause">要更新的项和数据</param>
<param name="whereClause">指定要更新的实体</param>
<returns></returns>
</member>
<member name="M:XCode.Entity`1.Update(System.String[],System.Object[],System.String[],System.Object[])">
<summary>更新一批实体数据</summary>
<param name="setNames">更新属性列表</param>
<param name="setValues">更新值列表</param>
<param name="whereNames">条件属性列表</param>
<param name="whereValues">条件值列表</param>
<returns>返回受影响的行数</returns>
</member>
<member name="M:XCode.Entity`1.Delete(`0)">
<summary>
从数据库中删除指定实体对象。
实体类应该实现该方法的另一个副本,以唯一键或主键作为参数
</summary>
<param name="obj">实体对象</param>
<returns>返回受影响的行数,可用于判断被删除了多少行,从而知道操作是否成功</returns>
</member>
<member name="M:XCode.Entity`1.Delete(System.String)">
<summary>从数据库中删除指定条件的实体对象。</summary>
<param name="whereClause">限制条件</param>
<returns></returns>
</member>
<member name="M:XCode.Entity`1.Delete(System.String[],System.Object[])">
<summary>从数据库中删除指定属性列表和值列表所限定的实体对象。</summary>
<param name="names">属性列表</param>
<param name="values">值列表</param>
<returns></returns>
</member>
<member name="M:XCode.Entity`1.Save(`0)">
<summary>把一个实体对象更新到数据库</summary>
<param name="obj">实体对象</param>
<returns>返回受影响的行数</returns>
</member>
<member name="P:XCode.Entity`1.Item(System.String)">
<summary>获取/设置 字段值。</summary>
<remarks>
一个索引,反射实现。
派生实体类可重写该索引,以避免发射带来的性能损耗。
基类已经实现了通用的快速访问,但是这里仍然重写,以增加控制,
比如字段名是属性名前面加上_,并且要求是实体字段才允许这样访问,否则一律按属性处理。
</remarks>
<param name="name">字段名</param>
<returns></returns>
</member>
<member name="M:XCode.Entity`1.FromXml(System.String)">
<summary>导入</summary>
<param name="xml"></param>
<returns></returns>
</member>
<member name="M:XCode.Entity`1.FromJson(System.String)">
<summary>导入</summary>
<param name="json"></param>
<returns></returns>
</member>
<member name="M:XCode.Entity`1.Clone">
<summary>创建当前对象的克隆对象,仅拷贝基本字段</summary>
<returns></returns>
</member>
<member name="M:XCode.Entity`1.CloneEntity(System.Boolean)">
<summary>克隆实体。创建当前对象的克隆对象,仅拷贝基本字段</summary>
<param name="setDirty">是否设置脏数据。默认不设置</param>
<returns></returns>
</member>
<member name="M:XCode.Entity`1.CloneEntityInternal(System.Boolean)">
<summary>克隆实体</summary>
<param name="setDirty"></param>
<returns></returns>
</member>
<member name="M:XCode.Entity`1.ToString">
<summary>已重载。</summary>
<returns></returns>
</member>
<member name="M:XCode.Entity`1.SetDirty(System.Boolean)">
<summary>设置所有数据的脏属性</summary>
<param name="isDirty">改变脏属性的属性个数</param>
<returns></returns>
</member>
<member name="P:XCode.Entity`1.HasDirty">
<summary>是否有脏数据。决定是否可以Update</summary>
</member>
<member name="M:XCode.Entity`1.GetOrAdd``1(``0,System.Func{``0,System.Boolean,`0},System.Func{``0,`0})">
<summary>获取 或 新增 对象,常用于统计等高并发更新的情况,一般配合SaveAsync</summary>
<typeparam name="TKey"></typeparam>
<param name="key">业务主键</param>
<param name="find">查找函数</param>
<param name="create">创建对象</param>
<returns></returns>
</member>
<member name="T:XCode.Entity`1.Meta">
<summary>实体元数据</summary>
</member>
<member name="P:XCode.Entity`1.Meta.ThisType">
<summary>实体类型</summary>
</member>
<member name="P:XCode.Entity`1.Meta.Factory">
<summary>实体操作者</summary>
</member>
<member name="P:XCode.Entity`1.Meta.Session">
<summary>实体会话。线程静态</summary>
</member>
<member name="P:XCode.Entity`1.Meta.Table">
<summary>表信息</summary>
</member>
<member name="P:XCode.Entity`1.Meta.ConnName">
<summary>链接名。线程内允许修改,修改者负责还原。若要还原默认值,设为null即可</summary>
</member>
<member name="P:XCode.Entity`1.Meta.TableName">
<summary>表名。线程内允许修改,修改者负责还原</summary>
</member>
<member name="P:XCode.Entity`1.Meta.AllFields">
<summary>所有数据属性</summary>
</member>
<member name="P:XCode.Entity`1.Meta.Fields">
<summary>所有绑定到数据表的属性</summary>
</member>
<member name="P:XCode.Entity`1.Meta.FieldNames">
<summary>字段名集合,不区分大小写的哈希表存储,外部不要修改元素数据</summary>
</member>
<member name="P:XCode.Entity`1.Meta.Unique">
<summary>唯一键,返回第一个标识列或者唯一的主键</summary>
</member>
<member name="P:XCode.Entity`1.Meta.Master">
<summary>主字段。主字段作为业务主要字段,代表当前数据行意义</summary>
</member>
<member name="M:XCode.Entity`1.Meta.BeginTrans">
<summary>开始事务</summary>
<returns>剩下的事务计数</returns>
</member>
<member name="M:XCode.Entity`1.Meta.Commit">
<summary>提交事务</summary>
<returns>剩下的事务计数</returns>
</member>
<member name="M:XCode.Entity`1.Meta.Rollback">
<summary>回滚事务,忽略异常</summary>
<returns>剩下的事务计数</returns>
</member>
<member name="M:XCode.Entity`1.Meta.CreateTrans">
<summary>创建事务</summary>
</member>
<member name="M:XCode.Entity`1.Meta.FormatName(System.String)">
<summary>格式化关键字</summary>
<param name="name">名称</param>
<returns></returns>
</member>
<member name="M:XCode.Entity`1.Meta.FormatDateTime(System.DateTime)">
<summary>格式化时间</summary>
<param name="dateTime"></param>
<returns></returns>
</member>
<member name="M:XCode.Entity`1.Meta.FormatValue(System.String,System.Object)">
<summary>格式化数据为SQL数据</summary>
<param name="name">名称</param>
<param name="value">数值</param>
<returns></returns>
</member>
<member name="M:XCode.Entity`1.Meta.FormatValue(XCode.Configuration.FieldItem,System.Object)">
<summary>格式化数据为SQL数据</summary>
<param name="field">字段</param>
<param name="value">数值</param>
<returns></returns>
</member>
<member name="P:XCode.Entity`1.Meta.Cache">
<summary>实体缓存</summary>
<returns></returns>
</member>
<member name="P:XCode.Entity`1.Meta.SingleCache">
<summary>单对象实体缓存。</summary>
</member>
<member name="P:XCode.Entity`1.Meta.Count">
<summary>总记录数,小于1000时是精确的,大于1000时缓存10分钟</summary>
</member>
<member name="M:XCode.Entity`1.Meta.ProcessWithSplit``1(System.String,System.String,System.Func{``0})">
<summary>在分库上执行操作,自动还原</summary>
<param name="connName"></param>
<param name="tableName"></param>
<param name="func"></param>
<returns></returns>
</member>
<member name="M:XCode.Entity`1.Meta.CreateSplit(System.String,System.String)">
<summary>创建分库会话,using结束时自动还原</summary>
<param name="connName">连接名</param>
<param name="tableName">表名</param>
<returns></returns>
</member>
<member name="P:XCode.Entity`1.Meta.SplitPackge.ConnName">
<summary>连接名</summary>
</member>
<member name="P:XCode.Entity`1.Meta.SplitPackge.TableName">
<summary>表名</summary>
</member>
<member name="P:XCode.Entity`1.Meta.Modules">
<summary>实体模块集合</summary>
</member>
<member name="T:XCode.Entity`1.EntityOperate">
<summary>默认的实体操作者</summary>
</member>
<member name="P:XCode.Entity`1.EntityOperate.EntityType">
<summary>实体类型</summary>
</member>
<member name="P:XCode.Entity`1.EntityOperate.Session">
<summary>实体会话</summary>
</member>
<member name="P:XCode.Entity`1.EntityOperate.Default">
<summary>默认实体</summary>
</member>
<member name="P:XCode.Entity`1.EntityOperate.Table">
<summary>数据表元数据</summary>
</member>
<member name="P:XCode.Entity`1.EntityOperate.AllFields">
<summary>所有数据属性</summary>
</member>
<member name="P:XCode.Entity`1.EntityOperate.Fields">
<summary>所有绑定到数据表的属性</summary>
</member>
<member name="P:XCode.Entity`1.EntityOperate.FieldNames">
<summary>字段名集合,不区分大小写的哈希表存储,外部不要修改元素数据</summary>
</member>
<member name="P:XCode.Entity`1.EntityOperate.Unique">
<summary>唯一键,返回第一个标识列或者唯一的主键</summary>
</member>
<member name="P:XCode.Entity`1.EntityOperate.Master">
<summary>主字段。主字段作为业务主要字段,代表当前数据行意义</summary>
</member>
<member name="P:XCode.Entity`1.EntityOperate.ConnName">
<summary>连接名</summary>
</member>
<member name="P:XCode.Entity`1.EntityOperate.TableName">
<summary>表名</summary>
</member>
<member name="P:XCode.Entity`1.EntityOperate.FormatedTableName">
<summary>已格式化的表名,带有中括号等</summary>
</member>
<member name="P:XCode.Entity`1.EntityOperate.Cache">
<summary>实体缓存</summary>
</member>
<member name="P:XCode.Entity`1.EntityOperate.SingleCache">
<summary>单对象实体缓存</summary>
</member>
<member name="P:XCode.Entity`1.EntityOperate.Count">
<summary>总记录数</summary>
</member>
<member name="M:XCode.Entity`1.EntityOperate.#ctor">
<summary>构造实体工厂</summary>
</member>
<member name="M:XCode.Entity`1.EntityOperate.Create(System.Boolean)">
<summary>创建一个实体对象</summary>
<param name="forEdit">是否为了编辑而创建,如果是,可以再次做一些相关的初始化工作</param>
<returns></returns>
</member>
<member name="M:XCode.Entity`1.EntityOperate.LoadData(System.Data.DataSet)">
<summary>加载记录集</summary>
<param name="ds">记录集</param>
<returns>实体数组</returns>
</member>
<member name="M:XCode.Entity`1.EntityOperate.Find(System.String,System.Object)">
<summary>根据属性以及对应的值,查找单个实体</summary>
<param name="name">名称</param>
<param name="value">数值</param>
<returns></returns>
</member>
<member name="M:XCode.Entity`1.EntityOperate.Find(XCode.Expression)">
<summary>根据条件查找单个实体</summary>
<param name="where"></param>
<returns></returns>
</member>
<member name="M:XCode.Entity`1.EntityOperate.FindByKey(System.Object)">
<summary>根据主键查找单个实体</summary>
<param name="key"></param>
<returns></returns>
</member>
<member name="M:XCode.Entity`1.EntityOperate.FindByKeyForEdit(System.Object)">
<summary>根据主键查询一个实体对象用于表单编辑</summary>
<param name="key"></param>
<returns></returns>
</member>
<member name="M:XCode.Entity`1.EntityOperate.FindAll">
<summary>获取所有实体对象。获取大量数据时会非常慢,慎用</summary>
<returns>实体数组</returns>
</member>
<member name="M:XCode.Entity`1.EntityOperate.FindAll(System.String,System.String,System.String,System.Int64,System.Int64)">
<summary>查询并返回实体对象集合。
表名以及所有字段名,请使用类名以及字段对应的属性名,方法内转换为表名和列名
</summary>
<param name="where">条件,不带Where</param>
<param name="order">排序,不带Order By</param>
<param name="selects">查询列</param>
<param name="startRowIndex">开始行,0表示第一行</param>
<param name="maximumRows">最大返回行数,0表示所有行</param>
<returns>实体数组</returns>
</member>
<member name="M:XCode.Entity`1.EntityOperate.FindAll(XCode.Expression,System.String,System.String,System.Int64,System.Int64)">
<summary>查询并返回实体对象集合。
表名以及所有字段名,请使用类名以及字段对应的属性名,方法内转换为表名和列名
</summary>
<param name="where">条件,不带Where</param>
<param name="order">排序,不带Order By</param>
<param name="selects">查询列</param>
<param name="startRowIndex">开始行,0表示第一行</param>
<param name="maximumRows">最大返回行数,0表示所有行</param>
<returns>实体数组</returns>
</member>
<member name="M:XCode.Entity`1.EntityOperate.FindAllWithCache">
<summary>查找所有缓存</summary>
<returns></returns>
</member>
<member name="M:XCode.Entity`1.EntityOperate.FindCount">
<summary>返回总记录数</summary>
<returns></returns>
</member>
<member name="M:XCode.Entity`1.EntityOperate.FindCount(System.String,System.String,System.String,System.Int64,System.Int64)">
<summary>返回总记录数</summary>
<param name="where">条件,不带Where</param>
<param name="order">排序,不带Order By</param>
<param name="selects">查询列</param>
<param name="startRowIndex">开始行,0表示第一行</param>
<param name="maximumRows">最大返回行数,0表示所有行</param>
<returns>总行数</returns>
</member>
<member name="M:XCode.Entity`1.EntityOperate.FindCount(XCode.Expression)">
<summary>返回总记录数</summary>
<param name="where">条件,不带Where</param>
<returns>总行数</returns>
</member>
<member name="M:XCode.Entity`1.EntityOperate.GetOrAdd``1(``0,System.Func{``0,System.Boolean,XCode.IEntity},System.Func{``0,XCode.IEntity})">
<summary>获取 或 新增 对象,常用于统计等高并发更新的情况,一般配合SaveAsync</summary>
<typeparam name="TKey"></typeparam>
<param name="key">业务主键</param>
<param name="find">查找函数</param>
<param name="create">创建对象</param>
<returns></returns>
</member>
<member name="M:XCode.Entity`1.EntityOperate.BeginTransaction">
<summary>开始事务</summary>
<returns></returns>
</member>
<member name="M:XCode.Entity`1.EntityOperate.Commit">
<summary>提交事务</summary>
<returns></returns>
</member>
<member name="M:XCode.Entity`1.EntityOperate.Rollback">
<summary>回滚事务</summary>
<returns></returns>
</member>
<member name="M:XCode.Entity`1.EntityOperate.CreateTrans">
<summary>创建事务</summary>
</member>
<member name="M:XCode.Entity`1.EntityOperate.FormatName(System.String)">
<summary>格式化关键字</summary>
<param name="name">名称</param>
<returns></returns>
</member>
<member name="M:XCode.Entity`1.EntityOperate.FormatValue(System.String,System.Object)">
<summary>
取得一个值的Sql值。
当这个值是字符串类型时,会在该值前后加单引号;
</summary>
<param name="name">字段</param>
<param name="value">对象</param>
<returns>Sql值的字符串形式</returns>
</member>
<member name="M:XCode.Entity`1.EntityOperate.FormatValue(XCode.Configuration.FieldItem,System.Object)">
<summary>格式化数据为SQL数据</summary>
<param name="field">字段</param>
<param name="value">数值</param>
<returns></returns>
</member>
<member name="P:XCode.Entity`1.EntityOperate.AutoIdentity">
<summary>是否自增获取自增返回值。默认启用</summary>
</member>
<member name="P:XCode.Entity`1.EntityOperate.AllowInsertIdentity">
<summary>是否允许向自增列插入数据。为免冲突,仅本线程有效</summary>
</member>
<member name="P:XCode.Entity`1.EntityOperate.AutoSetGuidField">
<summary>自动设置Guid的字段。对实体类有效,可在实体类类型构造函数里面设置</summary>
</member>
<member name="P:XCode.Entity`1.EntityOperate.AdditionalFields">
<summary>默认累加字段</summary>
</member>
<member name="P:XCode.Entity`1.EntityOperate.MasterTime">
<summary>主时间字段。代表当前数据行更新时间</summary>
</member>
<member name="P:XCode.Entity`1.EntityOperate.Selects">
<summary>默认选择的字段</summary>
</member>
<member name="T:XCode.EntityFactory">
<summary>实体工厂</summary>
</member>
<member name="M:XCode.EntityFactory.CreateOperate(System.Type)">
<summary>创建实体操作接口</summary>
<remarks>
因为只用来做实体操作,所以只需要一个实例即可。
调用平均耗时3.95ns,57.39%在EnsureInit
</remarks>
<param name="type">类型</param>
<returns></returns>
</member>
<member name="M:XCode.EntityFactory.AsFactory(System.Type)">
<summary>根据类型创建实体工厂</summary>
<param name="type"></param>
<returns></returns>
</member>
<member name="M:XCode.EntityFactory.Register(System.Type,XCode.IEntityOperate)">
<summary>使用指定的实体对象创建实体操作接口,主要用于Entity内部调用,避免反射带来的损耗</summary>
<param name="type">类型</param>
<param name="factory"></param>
<returns></returns>
</member>
<member name="M:XCode.EntityFactory.LoadEntities">
<summary>列出所有实体类</summary>
<returns></returns>
</member>
<member name="M:XCode.EntityFactory.LoadEntities(System.String,System.Boolean)">
<summary>获取指定连接名下的所有实体类</summary>
<param name="connName"></param>
<param name="isLoadAssembly">是否从未加载程序集中获取类型。使用仅反射的方法检查目标类型,如果存在,则进行常规加载</param>
<returns></returns>
</member>
<member name="M:XCode.EntityFactory.GetTables(System.String)">
<summary>获取指定连接名下的初始化时检查的所有实体数据表,用于反向工程检查表架构</summary>
<param name="connName"></param>
<returns></returns>
</member>
<member name="T:XCode.IEntity">
<summary>数据实体接口</summary>
</member>
<member name="P:XCode.IEntity.Dirtys">
<summary>脏属性。存储哪些属性的数据被修改过了。</summary>
</member>
<member name="P:XCode.IEntity.Extends">
<summary>扩展属性</summary>
</member>
<member name="P:XCode.IEntity.IsNullKey">
<summary>主键是否为空</summary>
</member>
<member name="M:XCode.IEntity.SetNullKey">
<summary>设置主键为空。Save将调用Insert</summary>
</member>
<member name="M:XCode.IEntity.Insert">
<summary>把该对象持久化到数据库</summary>
<returns></returns>
</member>
<member name="M:XCode.IEntity.Update">
<summary>更新数据库</summary>
<returns></returns>
</member>
<member name="M:XCode.IEntity.Delete">
<summary>从数据库中删除该对象</summary>
<returns></returns>
</member>
<member name="M:XCode.IEntity.Save">
<summary>保存。根据主键检查数据库中是否已存在该对象,再决定调用Insert或Update</summary>
<returns></returns>
</member>
<member name="M:XCode.IEntity.SaveWithoutValid">
<summary>不需要验证的保存,不执行Valid,一般用于快速导入数据</summary>
<returns></returns>
</member>
<member name="M:XCode.IEntity.SaveAsync(System.Int32)">
<summary>异步保存。实现延迟保存,大事务保存。主要面向日志表和频繁更新的在线记录表</summary>
<param name="msDelay">延迟保存的时间。默认0ms近实时保存</param>
<returns>是否成功加入异步队列</returns>
</member>
<member name="M:XCode.IEntity.SetItem(System.String,System.Object)">
<summary>设置字段值</summary>
<param name="name">字段名</param>
<param name="value">值</param>
<returns>返回是否成功设置了数据</returns>
</member>
<member name="M:XCode.IEntity.SetNoDirtyItem(System.String,System.Object)">
<summary>设置脏数据项。如果某个键存在并且数据没有脏,则设置</summary>
<param name="name"></param>
<param name="value"></param>
<returns>返回是否成功设置了数据</returns>
</member>
<member name="M:XCode.IEntity.CloneEntity(System.Boolean)">
<summary>克隆实体。创建当前对象的克隆对象,仅拷贝基本字段</summary>
<param name="setDirty">是否设置脏数据</param>
<returns></returns>
</member>
<member name="M:XCode.IEntity.CopyFrom(XCode.IEntity,System.Boolean)">
<summary>复制来自指定实体的成员,可以是不同类型的实体,只复制共有的基本字段,影响脏数据</summary>
<param name="entity">来源实体对象</param>
<param name="setDirty">是否设置脏数据</param>
<returns>实际复制成员数</returns>
</member>
<member name="M:XCode.IEntity.EqualTo(XCode.IEntity)">
<summary>判断两个实体是否相等。有可能是同一条数据的两个实体对象</summary>
<param name="entity"></param>
<returns></returns>
</member>
<member name="T:XCode.IEntityOperate">
<summary>数据实体操作接口</summary>
</member>
<member name="P:XCode.IEntityOperate.EntityType">
<summary>实体类型</summary>
</member>
<member name="P:XCode.IEntityOperate.Session">
<summary>实体会话</summary>
</member>
<member name="P:XCode.IEntityOperate.Default">
<summary>默认实体</summary>
</member>
<member name="P:XCode.IEntityOperate.Table">
<summary>数据表元数据</summary>
</member>
<member name="P:XCode.IEntityOperate.AllFields">
<summary>所有数据属性</summary>
</member>
<member name="P:XCode.IEntityOperate.Fields">
<summary>所有绑定到数据表的属性</summary>
</member>
<member name="P:XCode.IEntityOperate.FieldNames">
<summary>字段名集合,不区分大小写的哈希表存储,外部不要修改元素数据</summary>
</member>
<member name="P:XCode.IEntityOperate.Unique">
<summary>唯一键,返回第一个标识列或者唯一的主键</summary>
</member>
<member name="P:XCode.IEntityOperate.Master">
<summary>主字段。主字段作为业务主要字段,代表当前数据行意义</summary>
</member>
<member name="P:XCode.IEntityOperate.ConnName">
<summary>连接名</summary>
</member>
<member name="P:XCode.IEntityOperate.TableName">
<summary>表名</summary>
</member>
<member name="P:XCode.IEntityOperate.FormatedTableName">
<summary>已格式化的表名,带有中括号等</summary>
</member>
<member name="P:XCode.IEntityOperate.Cache">
<summary>实体缓存</summary>
</member>
<member name="P:XCode.IEntityOperate.SingleCache">
<summary>单对象实体缓存</summary>
</member>
<member name="P:XCode.IEntityOperate.Count">
<summary>总记录数</summary>
</member>
<member name="M:XCode.IEntityOperate.Create(System.Boolean)">
<summary>创建一个实体对象</summary>
<param name="forEdit">是否为了编辑而创建,如果是,可以再次做一些相关的初始化工作</param>
<returns></returns>
</member>
<member name="M:XCode.IEntityOperate.LoadData(System.Data.DataSet)">
<summary>加载记录集</summary>
<param name="ds">记录集</param>
<returns>实体数组</returns>
</member>
<member name="M:XCode.IEntityOperate.Find(System.String,System.Object)">
<summary>根据属性以及对应的值,查找单个实体</summary>
<param name="name">名称</param>
<param name="value">数值</param>
<returns></returns>
</member>
<member name="M:XCode.IEntityOperate.Find(XCode.Expression)">
<summary>根据条件查找单个实体</summary>
<param name="where"></param>
<returns></returns>
</member>
<member name="M:XCode.IEntityOperate.FindByKey(System.Object)">
<summary>根据主键查找单个实体</summary>
<param name="key"></param>
<returns></returns>
</member>
<member name="M:XCode.IEntityOperate.FindByKeyForEdit(System.Object)">
<summary>根据主键查询一个实体对象用于表单编辑</summary>
<param name="key"></param>
<returns></returns>
</member>
<member name="M:XCode.IEntityOperate.FindAll">
<summary>获取所有实体对象。获取大量数据时会非常慢,慎用</summary>
<returns>实体数组</returns>
</member>
<member name="M:XCode.IEntityOperate.FindAll(System.String,System.String,System.String,System.Int64,System.Int64)">
<summary>
查询并返回实体对象集合。
表名以及所有字段名,请使用类名以及字段对应的属性名,方法内转换为表名和列名
</summary>
<param name="where">条件,不带Where</param>
<param name="order">排序,不带Order By</param>
<param name="selects">查询列</param>
<param name="startRowIndex">开始行,0表示第一行</param>
<param name="maximumRows">最大返回行数,0表示所有行</param>
<returns>实体数组</returns>
</member>
<member name="M:XCode.IEntityOperate.FindAll(XCode.Expression,System.String,System.String,System.Int64,System.Int64)">
<summary>
查询并返回实体对象集合。
表名以及所有字段名,请使用类名以及字段对应的属性名,方法内转换为表名和列名
</summary>
<param name="where">条件,不带Where</param>
<param name="order">排序,不带Order By</param>
<param name="selects">查询列</param>
<param name="startRowIndex">开始行,0表示第一行</param>
<param name="maximumRows">最大返回行数,0表示所有行</param>
<returns>实体数组</returns>
</member>
<member name="M:XCode.IEntityOperate.FindAllWithCache">
<summary>查找所有缓存</summary>
<returns></returns>
</member>
<member name="M:XCode.IEntityOperate.FindCount">
<summary>返回总记录数</summary>
<returns></returns>
</member>
<member name="M:XCode.IEntityOperate.FindCount(System.String,System.String,System.String,System.Int64,System.Int64)">
<summary>返回总记录数</summary>
<param name="where">条件,不带Where</param>
<param name="order">排序,不带Order By</param>
<param name="selects">查询列</param>
<param name="startRowIndex">开始行,0表示第一行</param>
<param name="maximumRows">最大返回行数,0表示所有行</param>
<returns>总行数</returns>
</member>
<member name="M:XCode.IEntityOperate.FindCount(XCode.Expression)">
<summary>返回总记录数</summary>
<param name="where">条件,不带Where</param>
<returns>总行数</returns>
</member>
<member name="M:XCode.IEntityOperate.GetOrAdd``1(``0,System.Func{``0,System.Boolean,XCode.IEntity},System.Func{``0,XCode.IEntity})">
<summary>获取 或 新增 对象,常用于统计等高并发更新的情况,一般配合SaveAsync</summary>
<typeparam name="TKey"></typeparam>
<param name="key">业务主键</param>
<param name="find">查找函数</param>
<param name="create">创建对象</param>
<returns></returns>
</member>
<member name="M:XCode.IEntityOperate.BeginTransaction">
<summary>开始事务</summary>
<returns></returns>
</member>
<member name="M:XCode.IEntityOperate.Commit">
<summary>提交事务</summary>
<returns></returns>
</member>
<member name="M:XCode.IEntityOperate.Rollback">
<summary>回滚事务</summary>
<returns></returns>
</member>
<member name="M:XCode.IEntityOperate.CreateTrans">
<summary>创建事务</summary>
</member>
<member name="M:XCode.IEntityOperate.FormatName(System.String)">
<summary>格式化关键字</summary>
<param name="name">名称</param>
<returns></returns>
</member>
<member name="M:XCode.IEntityOperate.FormatValue(System.String,System.Object)">
<summary>
取得一个值的Sql值。
当这个值是字符串类型时,会在该值前后加单引号;
</summary>
<param name="name">字段</param>
<param name="value">对象</param>
<returns>Sql值的字符串形式</returns>
</member>
<member name="M:XCode.IEntityOperate.FormatValue(XCode.Configuration.FieldItem,System.Object)">
<summary>格式化数据为SQL数据</summary>
<param name="field">字段</param>
<param name="value">数值</param>
<returns></returns>
</member>
<member name="P:XCode.IEntityOperate.AutoIdentity">
<summary>是否自增获取自增返回值。默认启用</summary>
</member>
<member name="P:XCode.IEntityOperate.AllowInsertIdentity">
<summary>是否允许向自增列插入数据。为免冲突,仅本线程有效</summary>
</member>
<member name="P:XCode.IEntityOperate.AutoSetGuidField">
<summary>自动设置Guid的字段。对实体类有效,可在实体类类型构造函数里面设置</summary>
</member>
<member name="P:XCode.IEntityOperate.AdditionalFields">
<summary>默认累加字段</summary>
</member>
<member name="P:XCode.IEntityOperate.MasterTime">
<summary>主时间字段。代表当前数据行更新时间</summary>
</member>
<member name="P:XCode.IEntityOperate.Selects">
<summary>默认选择的字段</summary>
</member>
<member name="T:XCode.OrderExpression">
<summary>排序表达式</summary>
</member>
<member name="P:XCode.OrderExpression.Builder">
<summary>内置字符串</summary>
</member>
<member name="M:XCode.OrderExpression.#ctor">
<summary>实例化</summary>
</member>
<member name="M:XCode.OrderExpression.#ctor(System.String)">
<summary>实例化</summary>
<param name="exp"></param>
</member>
<member name="M:XCode.OrderExpression.And(System.String)">
<summary>增加</summary>
<param name="exp"></param>
<returns></returns>
</member>
<member name="M:XCode.OrderExpression.GetString(System.Text.StringBuilder,System.Collections.Generic.IDictionary{System.String,System.Object})">
<summary>已重载。</summary>
<param name="builder">字符串构建器</param>
<param name="ps">参数字典</param>
<returns></returns>
</member>
<member name="M:XCode.OrderExpression.op_Implicit(XCode.OrderExpression)~System.String">
<summary>类型转换</summary>
<param name="obj"></param>
<returns></returns>
</member>
<member name="M:XCode.OrderExpression.op_BitwiseAnd(XCode.OrderExpression,System.Object)">
<summary>重载运算符实现And操作</summary>
<param name="exp"></param>
<param name="value">数值</param>
<returns></returns>
</member>
<member name="T:XCode.Operator">
<summary>操作符</summary>
</member>
<member name="F:XCode.Operator.And">
<summary>与,交集</summary>
</member>
<member name="F:XCode.Operator.Or">
<summary>或,并集</summary>
</member>
<member name="F:XCode.Operator.Space">
<summary>空格</summary>
</member>
<member name="T:XCode.WhereExpression">
<summary>条件表达式</summary>
</member>
<member name="P:XCode.WhereExpression.Left">
<summary>左节点</summary>
</member>
<member name="P:XCode.WhereExpression.Right">
<summary>右节点</summary>
</member>
<member name="P:XCode.WhereExpression.Operator">
<summary>是否And</summary>
</member>
<member name="P:XCode.WhereExpression.Empty">
<summary>是否为空</summary>
</member>
<member name="M:XCode.WhereExpression.#ctor">
<summary>实例化</summary>
</member>
<member name="M:XCode.WhereExpression.#ctor(XCode.Expression,XCode.Operator,XCode.Expression)">
<summary>实例化</summary>
<param name="left"></param>
<param name="op"></param>
<param name="right"></param>
</member>
<member name="M:XCode.WhereExpression.GetString(System.Text.StringBuilder,System.Collections.Generic.IDictionary{System.String,System.Object})">
<summary>输出条件表达式的字符串表示,遍历表达式集合并拼接起来</summary>
<param name="builder"></param>
<param name="ps">参数字典</param>
<returns></returns>
</member>
<member name="M:XCode.WhereExpression.Flatten(XCode.Expression)">
<summary>拉平表达式,避免空子项</summary>
<param name="exp"></param>
<returns></returns>
</member>
<member name="T:XCode.Model.XCodeService">
<summary>XCode服务对象提供者</summary>
</member>
<member name="P:XCode.Model.XCodeService.Container">
<summary>当前对象容器</summary>
</member>
<member name="M:XCode.Model.XCodeService.CreateTable">
<summary>创建模型数据表</summary>
<returns></returns>
</member>
<member name="M:XCode.Model.XCodeService.CreateDataRowEntityAccessor(System.Type)">
<summary>创建实体类的数据行访问器</summary>
<param name="entityType"></param>
<returns></returns>
</member>
<member name="T:XCode.Transform.DataContext">
<summary>数据上下文</summary>
</member>
<member name="P:XCode.Transform.DataContext.Setting">
<summary>抽取设置</summary>
</member>
<member name="P:XCode.Transform.DataContext.Data">
<summary>实体列表</summary>
</member>
<member name="P:XCode.Transform.DataContext.FetchCost">
<summary>抽取耗时,毫秒</summary>
</member>
<member name="P:XCode.Transform.DataContext.Success">
<summary>成功处理数</summary>
</member>
<member name="P:XCode.Transform.DataContext.ProcessCost">
<summary>处理耗时</summary>
</member>
<member name="P:XCode.Transform.DataContext.Entity">
<summary>实体对象</summary>
</member>
<member name="P:XCode.Transform.DataContext.Error">
<summary>处理异常</summary>
</member>
<member name="P:XCode.Transform.DataContext.StartTime">
<summary>开始时间</summary>
</member>
<member name="P:XCode.Transform.DataContext.Item(System.String)">
<summary>用户数据</summary>
<param name="item"></param>
<returns></returns>
</member>
<member name="P:XCode.Transform.DataContext.FetchSpeed">
<summary>抽取速度</summary>
</member>
<member name="P:XCode.Transform.DataContext.ProcessSpeed">
<summary>处理速度</summary>
</member>
<member name="T:XCode.Transform.IETLModule">
<summary>数据抽取模块,用于自定义抽取过程中各个环节</summary>
</member>
<member name="M:XCode.Transform.IETLModule.Start">
<summary>开始调度</summary>
</member>
<member name="M:XCode.Transform.IETLModule.Stop">
<summary>停止调度</summary>
</member>
<member name="M:XCode.Transform.IETLModule.Init">
<summary>首次初始化任务</summary>
</member>
<member name="M:XCode.Transform.IETLModule.Processing(XCode.Transform.DataContext)">
<summary>单批数据处理前</summary>
<param name="ctx">数据上下文</param>
<returns></returns>
</member>
<member name="M:XCode.Transform.IETLModule.Processed(XCode.Transform.DataContext)">
<summary>单批数据处理后</summary>
<param name="ctx">数据上下文</param>
</member>
<member name="M:XCode.Transform.IETLModule.Fetched(XCode.Transform.DataContext)">
<summary>抽取完成</summary>
<param name="ctx">数据上下文</param>
</member>
<member name="M:XCode.Transform.IETLModule.OnFinished(XCode.Transform.DataContext)">
<summary>实体列表完成后</summary>
<param name="ctx">数据上下文</param>
</member>
<member name="M:XCode.Transform.IETLModule.OnError(XCode.Transform.DataContext)">
<summary>出错</summary>
<param name="ctx">数据上下文</param>
</member>
<member name="T:XCode.Transform.Sync`2">
<summary>数据同步,不同实体类之间</summary>
<typeparam name="TSource">源实体类</typeparam>
<typeparam name="TTarget">目标实体类</typeparam>
</member>
<member name="M:XCode.Transform.Sync`2.#ctor">
<summary>实例化数据抽取器</summary>
</member>
<member name="M:XCode.Transform.Sync`2.Init(XCode.Transform.IExtractSetting)">
<summary>每一轮启动时</summary>
<param name="set"></param>
<returns></returns>
</member>
<member name="M:XCode.Transform.Sync`2.ProcessItem(XCode.Transform.DataContext,XCode.IEntity)">
<summary>处理单行数据</summary>
<param name="ctx">数据上下文</param>
<param name="source">源实体</param>
</member>
<member name="M:XCode.Transform.Sync`2.SyncItem(`0,`1,System.Boolean)">
<summary>处理单行数据</summary>
<param name="source">源实体</param>
<param name="target">目标实体</param>
<param name="isNew">是否新增</param>
</member>
<member name="T:XCode.Transform.Sync`1">
<summary>数据同步,相同实体类不同表和库</summary>
<typeparam name="TSource">源实体类</typeparam>
</member>
<member name="P:XCode.Transform.Sync`1.SourceConn">
<summary>来源连接</summary>
</member>
<member name="P:XCode.Transform.Sync`1.SourceTable">
<summary>来源表名</summary>
</member>
<member name="P:XCode.Transform.Sync`1.TargetConn">
<summary>目标连接</summary>
</member>
<member name="P:XCode.Transform.Sync`1.TargetTable">
<summary>目标表名</summary>
</member>
<member name="M:XCode.Transform.Sync`1.#ctor">
<summary>实例化数据抽取器</summary>
</member>
<member name="M:XCode.Transform.Sync`1.Start">
<summary>启动时检查参数</summary>
</member>
<member name="M:XCode.Transform.Sync`1.Init(XCode.Transform.IExtractSetting)">
<summary>每一轮启动时</summary>
<param name="set"></param>
<returns></returns>
</member>
<member name="M:XCode.Transform.Sync`1.Fetch(XCode.Transform.DataContext,XCode.Transform.IExtracter,XCode.Transform.IExtractSetting)">
<summary>从来源表查数据</summary>
<param name="ctx">数据上下文</param>
<param name="extracter"></param>
<param name="set">设置</param>
<returns></returns>
</member>
<member name="M:XCode.Transform.Sync`1.OnProcess(XCode.Transform.DataContext)">
<summary>同步数据列表时,在目标表上执行</summary>
<param name="ctx">数据上下文</param>
<returns></returns>
</member>
<member name="M:XCode.Transform.Sync`1.ProcessItem(XCode.Transform.DataContext,XCode.IEntity)">
<summary>处理单行数据</summary>
<param name="ctx">数据上下文</param>
<param name="source">源实体</param>
</member>
<member name="M:XCode.Transform.Sync`1.SyncItem(`0,`0,System.Boolean)">
<summary>处理单行数据</summary>
<param name="source">源实体</param>
<param name="target">目标实体</param>
<param name="isNew">是否新增</param>
</member>
<member name="T:XCode.Transform.Sync">
<summary>数据同步</summary>
</member>
<member name="P:XCode.Transform.Sync.Target">
<summary>目标实体工厂。分批统计时不需要设定</summary>
</member>
<member name="P:XCode.Transform.Sync.InsertOnly">
<summary>仅插入,不用判断目标是否已有数据</summary>
</member>
<member name="M:XCode.Transform.Sync.#ctor">
<summary>实例化数据抽取器</summary>
</member>
<member name="M:XCode.Transform.Sync.#ctor(XCode.IEntityOperate,XCode.IEntityOperate)">
<summary>实例化数据同步</summary>
<param name="source"></param>
<param name="target"></param>
</member>
<member name="M:XCode.Transform.Sync.Fetch(XCode.Transform.DataContext,XCode.Transform.IExtracter,XCode.Transform.IExtractSetting)">
<summary>抽取数据</summary>
<param name="ctx">数据上下文</param>
<param name="extracter"></param>
<param name="set">设置</param>
<returns></returns>
</member>
<member name="M:XCode.Transform.Sync.OnProcess(XCode.Transform.DataContext)">
<summary>处理列表,带事务保护,传递批次配置,支持多线程</summary>
<param name="ctx">数据上下文</param>
</member>
<member name="M:XCode.Transform.Sync.ProcessItem(XCode.Transform.DataContext,XCode.IEntity)">
<summary>同步单行数据</summary>
<param name="ctx">数据上下文</param>
<param name="source">源实体</param>
<returns></returns>
</member>
<member name="M:XCode.Transform.Sync.GetItem(XCode.IEntity,System.Boolean@)">
<summary>根据源实体获取目标实体</summary>
<param name="source">源实体</param>
<param name="isNew">是否新增</param>
<returns></returns>
</member>
<member name="M:XCode.Transform.Sync.SaveItem(XCode.IEntity,System.Boolean)">
<summary>保存目标实体</summary>
<param name="target"></param>
<param name="isNew"></param>
</member>
<member name="T:XCode.Transform.IETLStat">
<summary>ETL统计接口</summary>
</member>
<member name="P:XCode.Transform.IETLStat.Total">
<summary>总数</summary>
</member>
<member name="P:XCode.Transform.IETLStat.Success">
<summary>成功</summary>
</member>
<member name="P:XCode.Transform.IETLStat.Changes">
<summary>改变数</summary>
</member>
<member name="P:XCode.Transform.IETLStat.Times">
<summary>次数</summary>
</member>
<member name="P:XCode.Transform.IETLStat.Error">
<summary>错误</summary>
</member>
<member name="P:XCode.Transform.IETLStat.Message">
<summary>错误内容</summary>
</member>
<member name="T:XCode.Transform.ETLStat">
<summary>ETL统计</summary>
</member>
<member name="P:XCode.Transform.ETLStat.Total">
<summary>总数</summary>
</member>
<member name="P:XCode.Transform.ETLStat.Success">
<summary>成功</summary>
</member>
<member name="P:XCode.Transform.ETLStat.Changes">
<summary>改变数</summary>
</member>
<member name="P:XCode.Transform.ETLStat.Times">
<summary>次数</summary>
</member>
<member name="P:XCode.Transform.ETLStat.Error">
<summary>错误</summary>
</member>
<member name="P:XCode.Transform.ETLStat.Message">
<summary>错误内容</summary>
</member>
<member name="T:XCode.Transform.IExtracter">
<summary>数据抽取接口</summary>
</member>
<member name="P:XCode.Transform.IExtracter.Name">
<summary>名称</summary>
</member>
<member name="P:XCode.Transform.IExtracter.Factory">
<summary>实体工厂</summary>
</member>
<member name="P:XCode.Transform.IExtracter.FieldName">
<summary>获取 或 设置 时间字段</summary>
</member>
<member name="P:XCode.Transform.IExtracter.Where">
<summary>附加条件</summary>
</member>
<member name="M:XCode.Transform.IExtracter.Init">
<summary>初始化</summary>
</member>
<member name="M:XCode.Transform.IExtracter.Fetch(XCode.Transform.IExtractSetting)">
<summary>抽取一批数据</summary>
<param name="set">设置</param>
<returns></returns>
</member>
<member name="P:XCode.Transform.IExtracter.Log">
<summary>日志</summary>
</member>
<member name="T:XCode.Transform.ExtracterBase">
<summary>抽取器基类</summary>
</member>
<member name="P:XCode.Transform.ExtracterBase.Name">
<summary>名称</summary>
</member>
<member name="P:XCode.Transform.ExtracterBase.Factory">
<summary>实体工厂</summary>
</member>
<member name="P:XCode.Transform.ExtracterBase.FieldName">
<summary>获取 或 设置 时间字段</summary>
</member>
<member name="P:XCode.Transform.ExtracterBase.Where">
<summary>附加条件</summary>
</member>
<member name="P:XCode.Transform.ExtracterBase.Field">
<summary>时间字段</summary>
</member>
<member name="P:XCode.Transform.ExtracterBase.OrderBy">
<summary>排序</summary>
</member>
<member name="P:XCode.Transform.ExtracterBase.Selects">
<summary>选择列</summary>
</member>
<member name="M:XCode.Transform.ExtracterBase.#ctor">
<summary>实例化时基抽取算法</summary>
</member>
<member name="M:XCode.Transform.ExtracterBase.Init">
<summary>初始化</summary>
</member>
<member name="P:XCode.Transform.ExtracterBase.Log">
<summary>日志</summary>
</member>
<member name="M:XCode.Transform.ExtracterBase.WriteLog(System.String,System.Object[])">
<summary>写日志</summary>
<param name="format"></param>
<param name="args"></param>
</member>
<member name="T:XCode.Transform.IdentityExtracter">
<summary>以自增列为比较点的数据抽取器</summary>
</member>
<member name="M:XCode.Transform.IdentityExtracter.Init">
<summary>初始化</summary>
</member>
<member name="M:XCode.Transform.IdentityExtracter.Fetch(XCode.Transform.IExtractSetting)">
<summary>抽取一批数据</summary>
<param name="set">设置</param>
<returns></returns>
</member>
<member name="M:XCode.Transform.IdentityExtracter.FetchData(System.Int32,System.Int32)">
<summary>分段分页抽取数据</summary>
<param name="start"></param>
<param name="maxRows"></param>
<returns></returns>
</member>
<member name="T:XCode.Transform.TimeSpanExtracter">
<summary>基于时间片的数据抽取器</summary>
</member>
<member name="M:XCode.Transform.TimeSpanExtracter.Init">
<summary>初始化</summary>
</member>
<member name="M:XCode.Transform.TimeSpanExtracter.Fetch(XCode.Transform.IExtractSetting)">
<summary>抽取一批数据</summary>
<param name="set">设置</param>
<returns></returns>
</member>
<member name="M:XCode.Transform.TimeSpanExtracter.FetchData(System.DateTime,System.DateTime,System.Int32,System.Int32)">
<summary>分段分页抽取数据</summary>
<param name="start"></param>
<param name="end"></param>
<param name="startRow"></param>
<param name="maxRows"></param>
<returns></returns>
</member>
<member name="T:XCode.Transform.TimeExtracter">
<summary>以时间为比较点的数据抽取器</summary>
</member>
<member name="P:XCode.Transform.TimeExtracter.ActualStart">
<summary>本批数据开始时间</summary>
</member>
<member name="P:XCode.Transform.TimeExtracter.ActualEnd">
<summary>本批数据结束时间</summary>
</member>
<member name="M:XCode.Transform.TimeExtracter.Init">
<summary>初始化</summary>
</member>
<member name="M:XCode.Transform.TimeExtracter.Fetch(XCode.Transform.IExtractSetting)">
<summary>抽取一批数据</summary>
<param name="set">设置</param>
<returns></returns>
</member>
<member name="M:XCode.Transform.TimeExtracter.FetchData(System.DateTime,System.DateTime,System.Int32,System.Int32)">
<summary>分段分页抽取数据</summary>
<param name="start"></param>
<param name="end"></param>
<param name="startRow"></param>
<param name="maxRows"></param>
<returns></returns>
</member>
<member name="M:XCode.Transform.TimeExtracter.GetMinTime(System.DateTime)">
<summary>获取大于等于指定时间的最小修改时间</summary>
<param name="start"></param>
<returns></returns>
</member>
<member name="T:XCode.Transform.IExtractSetting">
<summary>数据抽取参数</summary>
</member>
<member name="P:XCode.Transform.IExtractSetting.Start">
<summary>开始。大于等于</summary>
</member>
<member name="P:XCode.Transform.IExtractSetting.End">
<summary>结束。小于</summary>
</member>
<member name="P:XCode.Transform.IExtractSetting.Offset">
<summary>时间偏移。距离实时时间的秒数,部分业务不能跑到实时</summary>
</member>
<member name="P:XCode.Transform.IExtractSetting.Row">
<summary>开始行。分页</summary>
</member>
<member name="P:XCode.Transform.IExtractSetting.Step">
<summary>步进。最大区间大小,秒</summary>
</member>
<member name="P:XCode.Transform.IExtractSetting.BatchSize">
<summary>批大小</summary>
</member>
<member name="T:XCode.Transform.ExtractSetting">
<summary>数据抽取参数</summary>
</member>
<member name="P:XCode.Transform.ExtractSetting.Start">
<summary>开始。大于等于</summary>
</member>
<member name="P:XCode.Transform.ExtractSetting.End">
<summary>结束。小于</summary>
</member>
<member name="P:XCode.Transform.ExtractSetting.Offset">
<summary>时间偏移。距离实时时间的秒数,部分业务不能跑到实时</summary>
</member>
<member name="P:XCode.Transform.ExtractSetting.Row">
<summary>开始行。分页</summary>
</member>
<member name="P:XCode.Transform.ExtractSetting.Step">
<summary>步进。最大区间大小,秒</summary>
</member>
<member name="P:XCode.Transform.ExtractSetting.BatchSize">
<summary>批大小</summary>
</member>
<member name="M:XCode.Transform.ExtractSetting.#ctor">
<summary>实例化</summary>
</member>
<member name="M:XCode.Transform.ExtractSetting.#ctor(XCode.Transform.IExtractSetting)">
<summary>实例化</summary>
<param name="set"></param>
</member>
<member name="T:XCode.Transform.ExtractSettingHelper">
<summary>抽取参数帮助类</summary>
</member>
<member name="M:XCode.Transform.ExtractSettingHelper.Copy(XCode.Transform.IExtractSetting,XCode.Transform.IExtractSetting)">
<summary>拷贝设置参数</summary>
<param name="src"></param>
<param name="set"></param>
</member>
<member name="M:XCode.Transform.ExtractSettingHelper.Clone(XCode.Transform.IExtractSetting)">
<summary>克隆一份设置参数</summary>
<param name="src"></param>
<returns></returns>
</member>
<member name="T:XCode.Transform.ETL`1">
<summary>数据分批统计</summary>
<typeparam name="TSource">源实体类</typeparam>
</member>
<member name="M:XCode.Transform.ETL`1.#ctor">
<summary>实例化数据抽取器</summary>
</member>
<member name="T:XCode.Transform.ETL">
<summary>数据抽取转换处理</summary>
<remarks>
ETL数据抽取可以独立使用,也可以继承扩展。
同步数据或数据分批统计。
</remarks>
</member>
<member name="P:XCode.Transform.ETL.Name">
<summary>名称</summary>
</member>
<member name="P:XCode.Transform.ETL.Extracter">
<summary>数据源抽取器</summary>
</member>
<member name="P:XCode.Transform.ETL.Setting">
<summary>数据源抽取设置</summary>
</member>
<member name="P:XCode.Transform.ETL.MaxError">
<summary>最大错误数,连续发生多个错误时停止</summary>
</member>
<member name="F:XCode.Transform.ETL._Error">
<summary>当前累计连续错误次数</summary>
</member>
<member name="P:XCode.Transform.ETL.Stat">
<summary>统计</summary>
</member>
<member name="P:XCode.Transform.ETL.MaxTask">
<summary>最大并行处理任务数。默认0表示同步,N表示最多可以有N批数据同时处理</summary>
</member>
<member name="F:XCode.Transform.ETL._currentTask">
<summary>当前处理中的任务数</summary>
</member>
<member name="P:XCode.Transform.ETL.Module">
<summary>过滤模块列表</summary>
</member>
<member name="M:XCode.Transform.ETL.#ctor">
<summary>实例化数据抽取器</summary>
</member>
<member name="M:XCode.Transform.ETL.#ctor(XCode.IEntityOperate)">
<summary>实例化数据抽取器</summary>
<param name="source"></param>
</member>
<member name="M:XCode.Transform.ETL.Start">
<summary>开始</summary>
</member>
<member name="M:XCode.Transform.ETL.Stop">
<summary>停止</summary>
</member>
<member name="M:XCode.Transform.ETL.Init(XCode.Transform.IExtractSetting)">
<summary>每一轮启动时</summary>
<param name="set"></param>
<returns></returns>
</member>
<member name="M:XCode.Transform.ETL.Process">
<summary>抽取并处理一批数据</summary>
<returns>返回抽取数据行数,没有数据返回0,初始化或配置失败返回-1</returns>
</member>
<member name="M:XCode.Transform.ETL.Fetch(XCode.Transform.DataContext,XCode.Transform.IExtracter,XCode.Transform.IExtractSetting)">
<summary>抽取一批数据</summary>
<param name="ctx">数据上下文</param>
<param name="extracter"></param>
<param name="set">设置</param>
<returns></returns>
</member>
<member name="M:XCode.Transform.ETL.ProcessList(XCode.Transform.DataContext)">
<summary>处理列表,传递批次配置,支持多线程和异步</summary>
<remarks>
子类可以根据需要重载该方法,实现异步处理。
异步处理之前,需要先保存配置
</remarks>
<param name="ctx">数据上下文</param>
</member>
<member name="M:XCode.Transform.ETL.ProcessListAsync(XCode.Transform.DataContext)">
<summary>异步处理列表,传递批次配置</summary>
<param name="ctx">数据上下文</param>
</member>
<member name="M:XCode.Transform.ETL.OnProcess(XCode.Transform.DataContext)">
<summary>批量处理数据列表,可重载打开事务保护</summary>
<param name="ctx">数据上下文</param>
</member>
<member name="M:XCode.Transform.ETL.OnFinished(XCode.Transform.DataContext)">
<summary>处理完成</summary>
<param name="ctx">数据上下文</param>
</member>
<member name="M:XCode.Transform.ETL.ProcessItem(XCode.Transform.DataContext,XCode.IEntity)">
<summary>处理单行数据</summary>
<param name="ctx">数据上下文</param>
<param name="source">源实体</param>
<returns></returns>
</member>
<member name="M:XCode.Transform.ETL.OnError(XCode.Transform.DataContext)">
<summary>遇到错误时如何处理</summary>
<param name="ctx">数据上下文</param>
<returns></returns>
</member>
<member name="P:XCode.Transform.ETL.Period">
<summary>定时轮询周期。默认0秒表示不打开</summary>
</member>
<member name="P:XCode.Transform.ETL.Log">
<summary>日志</summary>
</member>
<member name="P:XCode.Transform.ETL.Provider">
<summary>数据库日志提供者</summary>
</member>
<member name="M:XCode.Transform.ETL.WriteLog(System.String,System.Object[])">
<summary>写日志</summary>
<param name="format"></param>
<param name="args"></param>
</member>
<member name="P:XCode.Transform.ETL.ShowError">
<summary>显示错误日志。默认true</summary>
</member>
<member name="M:XCode.Transform.ETL.WriteError(System.String,System.Object[])">
<summary>写错误日志</summary>
<param name="format"></param>
<param name="args"></param>
</member>
<member name="T:XCode.Transform.EntityTransform">
<summary>实体转换</summary>
</member>
<member name="P:XCode.Transform.EntityTransform.SrcConn">
<summary>源</summary>
</member>
<member name="P:XCode.Transform.EntityTransform.DesConn">
<summary>目的</summary>
</member>
<member name="P:XCode.Transform.EntityTransform.TableNames">
<summary>要导数据的表,为空表示全部</summary>
</member>
<member name="P:XCode.Transform.EntityTransform.BatchSize">
<summary>每批处理多少行数据,默认1000</summary>
</member>
<member name="P:XCode.Transform.EntityTransform.AllowInsertIdentity">
<summary>是否允许插入自增列</summary>
</member>
<member name="P:XCode.Transform.EntityTransform.OnlyTransformToEmptyTable">
<summary>仅迁移到空表。对于已有数据的表,不执行迁移。</summary>
</member>
<member name="P:XCode.Transform.EntityTransform.ShowSQL">
<summary>是否显示SQL</summary>
</member>
<member name="P:XCode.Transform.EntityTransform.PartialTableNames">
<summary>需要局部迁移的表。局部迁移就是只迁移一部分数据。</summary>
</member>
<member name="P:XCode.Transform.EntityTransform.PartialCount">
<summary>局部迁移记录数。默认1000</summary>
</member>
<member name="P:XCode.Transform.EntityTransform.PartialDesc">
<summary>局部迁移降序。默认为true,也就是只迁移最后的一批数据。</summary>
</member>
<member name="M:XCode.Transform.EntityTransform.Transform">
<summary>把一个链接的数据全部导入到另一个链接</summary>
<returns></returns>
</member>
<member name="M:XCode.Transform.EntityTransform.TransformTable(XCode.IEntityOperate,System.Int32,System.Nullable{System.Boolean},System.Func{System.Int32,System.Int32,System.Collections.Generic.IList{XCode.IEntity}})">
<summary>把一个表的数据全部导入到另一个表</summary>
<param name="eop">实体操作者。</param>
<param name="count">要迁移的记录数,默认0表示全部</param>
<param name="isDesc">是否降序。默认升序</param>
<param name="getData">用于获取数据的委托</param>
<returns></returns>
</member>
<member name="E:XCode.Transform.EntityTransform.OnTransformTable">
<summary>转换表时触发。如果参数被置空,表示不转换该表</summary>
</member>
<member name="E:XCode.Transform.EntityTransform.OnTransformEntity">
<summary>转换实体时触发</summary>
</member>
<member name="T:XCode.Web.EntityGrid">
<summary>用于显示数据的网格</summary>
</member>
<member name="P:XCode.Web.EntityGrid.DataSource">
<summary>数据源。如果为空,将会自动使用<see cref="P:XCode.Web.EntityGrid.Where"/>查询</summary>
</member>
<member name="P:XCode.Web.EntityGrid.Factory">
<summary>实体工厂</summary>
</member>
<member name="P:XCode.Web.EntityGrid.Name">
<summary>参数前缀。一个页面有多个Grid时很必要</summary>
</member>
<member name="P:XCode.Web.EntityGrid.Prefixs">
<summary>Http参数前缀集合,默认txt/ddl/dt/btn</summary>
</member>
<member name="M:XCode.Web.EntityGrid.#ctor">
<summary>无参数构造</summary>
</member>
<member name="M:XCode.Web.EntityGrid.#ctor(XCode.IEntityOperate)">
<summary>使用实体工厂构造</summary>
<param name="factory"></param>
</member>
<member name="M:XCode.Web.EntityGrid.Init">
<summary>获取参数</summary>
</member>
<member name="M:XCode.Web.EntityGrid.GetParam">
<summary>获取参数</summary>
</member>
<member name="P:XCode.Web.EntityGrid.PageTemplate">
<summary>分页模版</summary>
</member>
<member name="M:XCode.Web.EntityGrid.RenderPage">
<summary>生成分页输出</summary>
<returns></returns>
</member>
<member name="P:XCode.Web.EntityGrid.Where">
<summary>查询条件。由外部根据<see cref="P:NewLife.Web.WebHelper.Params"/>构造后赋值,<see cref="M:XCode.Web.EntityGrid.Select"/>将会调用该条件查询数据</summary>
</member>
<member name="P:XCode.Web.EntityGrid.WhereMethod">
<summary>查询Where条件的方法名</summary>
</member>
<member name="M:XCode.Web.EntityGrid.Select">
<summary>执行数据查询</summary>
</member>
<member name="T:XCode.Web.UserBehaviorModule">
<summary>用户行为模块,在线和操作记录</summary>
</member>
<member name="M:XCode.Web.UserBehaviorModule.System#Web#IHttpModule#Init(System.Web.HttpApplication)">
<summary>初始化模块,准备拦截请求。</summary>
<param name="context"></param>
</member>
<member name="P:XCode.Web.UserBehaviorModule.WebOnline">
<summary>Web在线</summary>
</member>
<member name="P:XCode.Web.UserBehaviorModule.WebBehavior">
<summary>访问记录</summary>
</member>
<member name="P:XCode.Web.UserBehaviorModule.WebStatistics">
<summary>访问统计</summary>
</member>
<member name="P:XCode.Web.UserBehaviorModule.ExcludeSuffixes">
<summary>忽略的后缀</summary>
</member>
<member name="M:XCode.Web.UserBehaviorModule.GetError(System.Web.HttpContext)">
<summary>获取错误,排除HttpException</summary>
<param name="ctx"></param>
<returns></returns>
</member>
<member name="T:XCode.Web.DbRunTimeModule">
<summary>页面查询执行时间模块</summary>
</member>
<member name="P:XCode.Web.DbRunTimeModule.DbRunTimeFormat">
<summary>执行时间字符串</summary>
</member>
<member name="M:XCode.Web.DbRunTimeModule.OnInit(System.Web.HttpContext)">
<summary>初始化模块,准备拦截请求。</summary>
<param name="context"></param>
</member>
<member name="M:XCode.Web.DbRunTimeModule.Render(System.Web.HttpContext)">
<summary>输出</summary>
<param name="context"></param>
<returns></returns>
</member>
<member name="T:XCode.IEntityTreeSetting">
<summary>实体树设置</summary>
</member>
<member name="P:XCode.IEntityTreeSetting.Key">
<summary>关联键名称,一般是主键,如ID</summary>
</member>
<member name="P:XCode.IEntityTreeSetting.Parent">
<summary>关联父键名,一般是Parent加主键,如ParentID</summary>
</member>
<member name="P:XCode.IEntityTreeSetting.Sort">
<summary>排序字段,默认是"Sorting", "Sort", "Rank"之一</summary>
</member>
<member name="P:XCode.IEntityTreeSetting.Name">
<summary>名称键名,如Name,否则使用第一个非自增字段</summary>
<remarks>影响NodeName、TreeNodeName、TreeNodeName2、FindByPath、GetFullPath、GetFullPath2等</remarks>
</member>
<member name="P:XCode.IEntityTreeSetting.Text">
<summary>文本键名</summary>
</member>
<member name="P:XCode.IEntityTreeSetting.BigSort">
<summary>是否大排序,较大排序值在前面</summary>
</member>
<member name="P:XCode.IEntityTreeSetting.MaxDeepth">
<summary>允许的最大深度。默认0,不限制</summary>
</member>
<member name="T:XCode.EntityTreeSetting`1">
<summary>实体树设置</summary>
</member>
<member name="P:XCode.EntityTreeSetting`1.Factory">
<summary>实体操作者</summary>
</member>
<member name="P:XCode.EntityTreeSetting`1.Key">
<summary>关联键名称,一般是主键,如ID</summary>
</member>
<member name="P:XCode.EntityTreeSetting`1.Parent">
<summary>关联父键名,一般是Parent加主键,如ParentID</summary>
</member>
<member name="P:XCode.EntityTreeSetting`1.Sort">
<summary>排序字段,默认是"Sorting", "Sort", "Rank"之一</summary>
</member>
<member name="P:XCode.EntityTreeSetting`1.Name">
<summary>名称键名,如Name,否则使用第一个非自增字段</summary>
<remarks>影响NodeName、TreeNodeName、TreeNodeName2、FindByPath、GetFullPath、GetFullPath2等</remarks>
</member>
<member name="P:XCode.EntityTreeSetting`1.Text">
<summary>文本键名</summary>
</member>
<member name="P:XCode.EntityTreeSetting`1.BigSort">
<summary>是否大排序,较大排序值在前面</summary>
</member>
<member name="P:XCode.EntityTreeSetting`1.MaxDeepth">
<summary>允许的最大深度。默认0,不限制</summary>
</member>
<member name="T:XCode.EntityTree`1">
<summary>主键为整型的实体树基类</summary>
<typeparam name="TEntity"></typeparam>
</member>
<member name="T:XCode.EntityTree`2">
<summary>实体树基类,具有树形结构的实体继承该类即可得到各种树操作功能</summary>
<remarks>
实体树很神奇,子类可以通过KeyName、ParentKeyName、SortingKeyName、NameKeyName等设置型属性,
指定关联键、关联父键、排序键、名称键,其中前两个是必须的,它们是构造一棵树的根基!
整个表会形成一颗实体树,同时也是一个实体列表,子级紧靠父级,同级排序,<see cref="P:XCode.EntityTree`2.Root"/>就是这棵树的根。
所以,Root.Childs可以得到顶级节点集合,Root.AllChilds得到整棵树。
</remarks>
<typeparam name="TKey">主键类型</typeparam>
<typeparam name="TEntity">实体类型</typeparam>
</member>
<member name="F:XCode.EntityTree`2.Setting">
<summary>实体树操作者</summary>
</member>
<member name="P:XCode.EntityTree`2.Sort">
<summary>排序值</summary>
</member>
<member name="P:XCode.EntityTree`2.Childs">
<summary>子节点</summary>
</member>
<member name="M:XCode.EntityTree`2.FindChilds">
<summary>子节点</summary>
</member>
<member name="P:XCode.EntityTree`2.Parent">
<summary>父节点</summary>
</member>
<member name="M:XCode.EntityTree`2.FindParent">
<summary>父节点</summary>
</member>
<member name="M:XCode.EntityTree`2.FindByKeyWithCache(`0)">
<summary>在缓存中查找节点</summary>
</member>
<member name="P:XCode.EntityTree`2.AllChilds">
<summary>子孙节点</summary>
</member>
<member name="P:XCode.EntityTree`2.MyAllChilds">
<summary>子孙节点,包含自己</summary>
</member>
<member name="P:XCode.EntityTree`2.AllParents">
<summary>父节点集合</summary>
</member>
<member name="P:XCode.EntityTree`2.Deepth">
<summary>深度</summary>
</member>
<member name="P:XCode.EntityTree`2.Root">
<summary>根</summary>
</member>
<member name="P:XCode.EntityTree`2.NodeName">
<summary>节点名</summary>
</member>
<member name="P:XCode.EntityTree`2.ParentNodeName">
<summary>父级节点名</summary>
</member>
<member name="P:XCode.EntityTree`2.TreeNodeName">
<summary>树形节点名,根据深度带全角空格前缀</summary>
</member>
<member name="P:XCode.EntityTree`2.TreeNodeName2">
<summary>树形节点名,根据深度带全角空格前缀</summary>
</member>
<member name="P:XCode.EntityTree`2.TreeNodeText">
<summary>树形节点名,根据深度带全角空格前缀</summary>
</member>
<member name="P:XCode.EntityTree`2.FullPath">
<summary>斜杠分隔的全路径</summary>
</member>
<member name="P:XCode.EntityTree`2.FullParentPath">
<summary>斜杠分隔的全父路径</summary>
</member>
<member name="M:XCode.EntityTree`2.FindAllByParent(`0)">
<summary>根据父级查找所有子级,带排序功能,先排序字段再主键</summary>
<remarks>如果是顶级,那么包含所有无头节点,无头节点由错误数据造成</remarks>
<param name="parentKey"></param>
<returns></returns>
</member>
<member name="M:XCode.EntityTree`2.FindAllNoParent">
<summary>查找所有无头节点(没有父节点的节点)集合(其实就是父节点已经被删掉了的非法节点)</summary>
<returns></returns>
</member>
<member name="M:XCode.EntityTree`2.FindAllChildsByParent(`0)">
<summary>查找指定键的所有子节点,以深度层次树结构输出,包括当前节点作为根节点。空父节点返回顶级列表,无效父节点返回空列表</summary>
<param name="parentKey"></param>
<returns></returns>
</member>
<member name="M:XCode.EntityTree`2.FindAllChildsNoParent(`0)">
<summary>查找指定键的所有子节点,以深度层次树结构输出。空父节点返回顶级列表,无效父节点返回空列表</summary>
<param name="parentKey"></param>
<returns></returns>
</member>
<member name="M:XCode.EntityTree`2.FindAllChildsExcept(XCode.IEntityTree)">
<summary>获取完整树,包含根节点,排除指定分支。多用于树节点父级选择</summary>
<param name="exclude"></param>
<returns></returns>
</member>
<member name="M:XCode.EntityTree`2.FindAllParentsByKey(`0)">
<summary>查找指定键的所有父节点,从高到底以深度层次树结构输出</summary>
<param name="key"></param>
<returns></returns>
</member>
<member name="M:XCode.EntityTree`2.FindAllChilds(XCode.IEntityTree,System.Boolean,XCode.IEntityTree)">
<summary>查找指定节点的所有子节点,以深度层次树结构输出</summary>
<param name="entity">根节点</param>
<param name="includeSelf">返回列表是否包含根节点,默认false</param>
<param name="exclude">要排除的节点</param>
<returns></returns>
</member>
<member name="M:XCode.EntityTree`2.FindAllParents(XCode.IEntityTree,System.Boolean)">
<summary>查找指定节点的所有父节点,从高到底以深度层次树结构输出</summary>
<param name="entity"></param>
<param name="includeSelf">返回列表是否包含根节点,默认false</param>
<returns></returns>
</member>
<member name="M:XCode.EntityTree`2.FindByPath(System.String,System.String[])">
<summary>根据层次路径查找</summary>
<param name="path">层次路径</param>
<param name="keys">用于在每一层匹配实体的键值,默认是NameKeyName</param>
<returns></returns>
</member>
<member name="M:XCode.EntityTree`2.Contains(`0)">
<summary>是否包含子节点</summary>
<param name="key">子节点键值</param>
<returns></returns>
</member>
<member name="M:XCode.EntityTree`2.GetFullPath(System.Boolean,System.String,System.Func{`1,System.String})">
<summary>取得全路径的实体,由上向下排序</summary>
<param name="includeSelf">是否包含自己</param>
<param name="separator">分隔符</param>
<param name="func">回调</param>
<returns></returns>
</member>
<member name="M:XCode.EntityTree`2.ClearRelation">
<summary>删除子级到本级的关系。导出数据前可以先删除关系,以减少导出的大小</summary>
</member>
<member name="M:XCode.EntityTree`2.Up">
<summary>排序上升</summary>
</member>
<member name="M:XCode.EntityTree`2.Down">
<summary>排序下降</summary>
</member>
<member name="M:XCode.EntityTree`2.Valid(System.Boolean)">
<summary>验证树形数据是否有效</summary>
<param name="isNew">是否新数据</param>
</member>
<member name="P:XCode.EntityTree`2.XCode#IEntityTree#Parent">
<summary>父实体</summary>
</member>
<member name="P:XCode.EntityTree`2.XCode#IEntityTree#Childs">
<summary>子实体集合</summary>
</member>
<member name="P:XCode.EntityTree`2.XCode#IEntityTree#AllChilds">
<summary>子孙实体集合。以深度层次树结构输出</summary>
</member>
<member name="P:XCode.EntityTree`2.XCode#IEntityTree#AllParents">
<summary>父亲实体集合。以深度层次树结构输出</summary>
</member>
<member name="M:XCode.EntityTree`2.XCode#IEntityTree#FindAllChildsExcept(XCode.IEntityTree)">
<summary>获取完整树,包含根节点,排除指定分支。多用于树节点父级选择</summary>
<param name="exclude"></param>
<returns></returns>
</member>
<member name="T:XCode.IEntityTree">
<summary>实体树接口</summary>
</member>
<member name="P:XCode.IEntityTree.Parent">
<summary>父实体</summary>
</member>
<member name="P:XCode.IEntityTree.Childs">
<summary>子实体集合</summary>
</member>
<member name="P:XCode.IEntityTree.AllChilds">
<summary>子孙实体集合。以深度层次树结构输出</summary>
</member>
<member name="P:XCode.IEntityTree.AllParents">
<summary>父亲实体集合。以深度层次树结构输出</summary>
</member>
<member name="P:XCode.IEntityTree.Deepth">
<summary>深度</summary>
</member>
<member name="P:XCode.IEntityTree.TreeNodeText">
<summary>树形节点名,根据深度带全角空格前缀</summary>
</member>
<member name="M:XCode.IEntityTree.FindAllChildsExcept(XCode.IEntityTree)">
<summary>获取完整树,包含根节点,排除指定分支。多用于树节点父级选择</summary>
<param name="exclude"></param>
<returns></returns>
</member>
<member name="T:NewLife.Caching.DbCache">
<summary>数据库缓存。利用数据表来缓存信息</summary>
<remarks>
构建一个操作队列,新增、更新、删除等操作全部排队单线程执行,以改进性能
</remarks>
</member>
<member name="P:NewLife.Caching.DbCache.Factory">
<summary>实体工厂</summary>
</member>
<member name="P:NewLife.Caching.DbCache.KeyField">
<summary>主键字段</summary>
</member>
<member name="P:NewLife.Caching.DbCache.TimeField">
<summary>时间字段</summary>
</member>
<member name="M:NewLife.Caching.DbCache.#ctor(XCode.IEntityOperate,System.String,System.String)">
<summary>实例化一个数据库缓存</summary>
<param name="factory"></param>
<param name="keyName"></param>
<param name="timeName"></param>
</member>
<member name="M:NewLife.Caching.DbCache.OnDispose(System.Boolean)">
<summary>销毁</summary>
<param name="disposing"></param>
</member>
<member name="P:NewLife.Caching.DbCache.Count">
<summary>缓存个数。高频使用时注意性能</summary>
</member>
<member name="P:NewLife.Caching.DbCache.Keys">
<summary>所有键。实际返回只读列表新实例,数据量较大时注意性能</summary>
</member>
<member name="M:NewLife.Caching.DbCache.Init(System.String)">
<summary>初始化配置</summary>
<param name="config"></param>
</member>
<member name="M:NewLife.Caching.DbCache.ContainsKey(System.String)">
<summary>是否包含缓存项</summary>
<param name="key"></param>
<returns></returns>
</member>
<member name="M:NewLife.Caching.DbCache.Set``1(System.String,``0,System.Int32)">
<summary>添加缓存项,已存在时更新</summary>
<typeparam name="T">值类型</typeparam>
<param name="key">键</param>
<param name="value">值</param>
<param name="expire">过期时间,秒。小于0时采用默认缓存时间</param>
<returns></returns>
</member>
<member name="M:NewLife.Caching.DbCache.Get``1(System.String)">
<summary>获取缓存项,不存在时返回默认值</summary>
<param name="key">键</param>
<returns></returns>
</member>
<member name="M:NewLife.Caching.DbCache.Remove(System.String[])">
<summary>批量移除缓存项</summary>
<param name="keys">键集合</param>
<returns>实际移除个数</returns>
</member>
<member name="M:NewLife.Caching.DbCache.SetExpire(System.String,System.TimeSpan)">
<summary>设置缓存项有效期</summary>
<param name="key">键</param>
<param name="expire">过期时间</param>
<returns>设置是否成功</returns>
</member>
<member name="M:NewLife.Caching.DbCache.GetExpire(System.String)">
<summary>获取缓存项有效期,不存在时返回Zero</summary>
<param name="key">键</param>
<returns></returns>
</member>
<member name="M:NewLife.Caching.DbCache.Add``1(System.String,``0,System.Int32)">
<summary>添加,已存在时不更新,常用于锁争夺</summary>
<typeparam name="T">值类型</typeparam>
<param name="key">键</param>
<param name="value">值</param>
<param name="expire">过期时间,秒。小于0时采用默认缓存时间</param>
<returns></returns>
</member>
<member name="F:NewLife.Caching.DbCache.clearTimer">
<summary>清理会话计时器</summary>
</member>
<member name="M:NewLife.Caching.DbCache.RemoveNotAlive(System.Object)">
<summary>移除过期的缓存项</summary>
</member>
<member name="M:NewLife.Caching.DbCache.BenchOne(System.Int64,System.Int32,System.Boolean)">
<summary>使用指定线程测试指定次数</summary>
<param name="times">次数</param>
<param name="threads">线程</param>
<param name="rand">随机读写</param>
</member>
<member name="T:NewLife.Caching.IDbCache">
<summary>数据缓存接口</summary>
</member>
<member name="P:NewLife.Caching.IDbCache.Name">
<summary>名称</summary>
</member>
<member name="P:NewLife.Caching.IDbCache.Value">
<summary>键值</summary>
</member>
<member name="P:NewLife.Caching.IDbCache.CreateTime">
<summary>创建时间</summary>
</member>
<member name="P:NewLife.Caching.IDbCache.ExpiredTime">
<summary>过期时间</summary>
</member>
<member name="M:NewLife.Caching.IDbCache.SaveAsync(System.Int32)">
<summary>异步保存</summary>
<param name="msDelay"></param>
<returns></returns>
</member>
</members>
</doc>
|