ShowModelContainer和ShowModel,实现实体数据先内存缓存后数据库搜索

2017-05-09 09:42:21  访问(1641) 赞(0) 踩(0)

  • using SlowX.Core.Model;
    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Text;
    using System.Threading.Tasks;
    
    namespace SlowX.Core.Classes.ShowDatas
    {
        /// <summary>
        /// 显示值的容器
        /// </summary>
        [Serializable]
        public class ShowModelContainer
        {
            /// <summary>
            /// 显示值的容器
            /// </summary>
            public ShowModelContainer()
            {
    
            }
    
            /// <summary>
            /// 构建列表
            /// </summary>
            protected List<ShowModel> DataList = new List<ShowModel>();
    
            /// <summary>
            /// 获得BaseModel
            /// </summary>
            /// <param name="className"></param>
            /// <param name="pkId"></param>
            /// <returns></returns>
            public BaseModel BaseModelFind(string className,string pkId)
            {
                if (DataList == null)
                    return null;
    
                foreach (ShowModel item in DataList)
                {
                    if (item == null)
                        continue;
    
                    if (item.ClassName != className)
                        continue;
    
                    if (item.PkID != pkId)
                        continue;
    
                    return item.Data;
                }
    
                return null;
            }
    
    
            /// <summary>
            /// 获得ShowModel
            /// </summary>
            /// <param name="className"></param>
            /// <param name="pkId"></param>
            /// <returns></returns>
            public ShowModel ShowModelFind(string className, string pkId)
            {
                if (DataList == null)
                    return null;
    
                foreach (ShowModel item in DataList)
                {
                    if (item == null)
                        continue;
    
                    if (item.ClassName != className)
                        continue;
    
                    if (item.PkID != pkId)
                        continue;
    
                    return item;
                }
    
                return null;
            }
    
            /// <summary>
            /// 添加Model
            /// </summary>
            /// <param name="className"></param>
            /// <param name="pkId"></param>
            /// <param name="model"></param>
            public void ShowModelAdd
                (
                    string className, 
                    string pkId,
                    BaseModel model
                )
            {
                if (DataList == null)
                    DataList = new List<ShowModel>();
    
                foreach (ShowModel item in DataList)
                {
                    if (item == null)
                        continue;
    
                    if (item.ClassName != className)
                        continue;
    
                    if (item.PkID != pkId)
                        continue;
    
                    item.Data = model;
                    return;
    
                }
    
                ShowModel theValue = new ShowModel();
                theValue.ClassName = className;
                theValue.PkID = pkId;
                theValue.Data = model;
    
                DataList.Add(theValue);
            }
    
    
        }
    }
    
    

  • using SlowX.Core.Model;
    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Text;
    using System.Threading.Tasks;
    
    namespace SlowX.Core.Classes.ShowDatas
    {
        /// <summary>
        /// 显示值的容器
        /// </summary>
        [Serializable]
        public class ShowModel
        {
            /// <summary>
            /// 
            /// </summary>
            public ShowModel()
            {
    
            }
    
    
            #region ClassName ~ 逻辑类
    
            /// <summary>
            /// ClassName ~ 逻辑类
            /// </summary>
            protected string m_ClassName = null;
    
            /// <summary>
            /// ClassName ~ 逻辑类
            /// </summary>
            public string ClassName
            {
                get
                {
                    return m_ClassName;
                }
                set
                {
                    m_ClassName = value;
                }
            }
    
            #endregion ClassName ~ 逻辑类
    
    
            #region PkID ~ 关键字
    
            /// <summary>
            /// PkID ~ 关键字
            /// </summary>
            protected string m_PkID = null;
    
            /// <summary>
            /// PkID ~ 关键字
            /// </summary>
            public string PkID
            {
                get
                {
                    return m_PkID;
                }
                set
                {
                    m_PkID = value;
                }
            }
    
            #endregion PkID ~ 关键字
    
    
            #region Data ~ 值
    
            /// <summary>
            /// Data ~ 值
            /// </summary>
            protected BaseModel m_Data = null;
    
            /// <summary>
            /// Data ~ 值
            /// </summary>
            public BaseModel Data
            {
                get
                {
                    return m_Data;
                }
                set
                {
                    m_Data = value;
                }
            }
    
            #endregion Data ~ 值
    
    
        }
    }
    
    

标签:ShowModelContainer和ShowModel,实现实体数据先内存缓存后数据库搜索 

上一条:

下一条:


 

相关评论

评论加载中……
 

发表评论

类型:
内容:
  (Alt+Enter)