• 随笔:一些注意的问题


    一些要注意的问题:
    1、[Serializable]这个标签是类可以被序列化的特性,表示这个类可以被序列化。
          #region T_Role数据实体
          ///<summary>
          /// T_Role数据实体
          ///</summary>
           [Serializable]
            public class T_Role
           {
            }
           #endretion
    
    2private int _taskLogDeatilID;//加下划线习惯问题
       private Guid _userID=Guid.Empty;//Guid类型,注意Guid.Empty;
       好处是你不用担心ID重复问题,并且无法推测下一个值是什么,对于网络应用更安全一些。
          1.一个GUID为一个128位的整数(16字节),在使用唯一标识符的情况下,你可以在所有计算机和网络之间使用这一整数。  
          2.GUID 的格式为“xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx”,其中每个 x 是 0-9 或 a-f 范围内的一个十六进制的数字。例如:337c7f2b-7a34-4f50-9141-bab9e6478cc8 即为有效的 GUID 值。  
          3.世界上的任何两台计算机都不会生成重复的 GUID 值。GUID 主要用于在拥有多个节点、多台计算机的网络或系统中,分配必须具有唯一性的标识符。 
          4. 在 Windows 平台上,GUID 应用非常广泛:注册表、类及接口标识、数据库、甚至自动生成的机器名、目录名等。
    
    3private int _memo=String.Empty;//日志正文一般DateTime或string会用Empty
         String.Empty用于字符串初始化,例如,String a; Console.WriteLine(a);就会报错
          而String a=string Empty;Console.WriteLine(a);不会报错,
          这个也可以用于比较a==""和a==string.Empty一样的效果。
    
    4、变量定义和封装后的公共属性可以不写到一起,然后折叠起来。
         #region 变量定义
             private int _taskLogDetailID;
         #endregion
         #region 公共属性
          /// <summary>
          /// ID                     //注意这个要加上,代码规范
          /// </summary>
            public int TaskLogDetailID
            {
                 get{return _taskLogDetailID};
                 set{_taskLogDetailID=value};
            }
         #endregion
    
    5、在实体类中的定义字段的时候,不一定都是按数据库表中的定义,也可以自定义不是数据库给的字段。例如:private int _istoday;//查询时自定义添加判断是否是今天(这要自定义不是数据库给的)
    
    6、在实体类中,要定义构造函数,并用标签折叠好
          #region
           /// <summary>
          /// T_TaskLogDetail                    
          /// </summary>
           public V_TaskLog()
           {
            }
          #endregion
          构造函数:简单的来说构造函数就是用来创建对象用的,说的专业些叫实例化对象。定义:class A{public A(){}}使用:A a=new A();//在这里,A()就是就是构造函数。需要注意的一点是,如果类里
    
    面没有定义构造函数,编译器也会自动生产一个空构造函数,类的各个成员都赋上默认值。但是如果在类里面只定义了一个私有的构造函数的时候,那么这个类将不能被实例化。
    class A{string a;private A() { }//这个类不能被实例化} 如果我们定义了带参数的构造函数,而没有定义不带参数的构造函数,那么在实例化这个类的对象的时候必须提供参数。
    class A{string a;public A(string str) {a=str; }} 不能这么实例化对象 A a=new A(); 7、新闻类的定义,记录ID,标题;正文;消息来源;发布日期;发布人ID;咨询类型int(1=新闻,2=公告,3=通知);状态int(0=删除,1=未发布,2=发布);置顶int 8、定义实体类中,一般需要定义一个字典表,一般放到最后构造函数之后,如职务类中,怎么用呢,//待定 public T_Job ( Guid jobID, string jobName, int sortIndex ) { _jobID=jobID; string jobName; _sortIndex=sortIndex; }
    9、设置cookie的过程,CookieHelper是一个公共类。放到Common里面
         if(checkbox.checked)
         {
               CookieHelper.SetCookie("myUserName",userName,DateTime.Now.AddYears[1]);
         }
          else
         {
               CookieHelper.RemoveCookie("myUserName");
         }
         
         public sealed class CookieHelper
         {
               private CookieHelper()
               {
               }
               ///<summary>
               ///获取一个数组形式的Cookies
               ///<summary>
               public static HttpCookie GetCookie(string name)
               {
                     if(!string.IsNullOrEmpty(name))
                      {
                              return HttpContext.Current.Request.Cookies[name];
                       } 
                }      
         }//具体的可以把Cookie的获取,保存封装成一个类。参照备忘Cookies设置。
    
    10、用户授权:需要建立用户授权信息实体类,Guid_UserID,Username,FullName,JobName,OrgID
  • 相关阅读:
    Linux文件/proc/net/tcp分析
    为什么系统调用会消耗较多资源
    为什么Linux默认页大小是4KB
    为什么Linux需要虚拟内存
    Make 命令教程
    关于同步的一点思考-下
    关于同步的一点思考-上
    Linux下的进程控制块(PCB)
    汇编语言基础:寄存器和系统调用
    内核栈与thread_info结构详解
  • 原文地址:https://www.cnblogs.com/d685600/p/3665959.html
Copyright © 2020-2023  润新知