hsj2010
http:www.mmloft.com

最近碰到点郁闷的事情。

不过注意下也就过去了。

程序照样能运行,而且也不会有什么错。

 

例一

普通实体类都这么写

 

代码
public class ***Info : IDisposable
    {
        
#region IDisposable 接口实现
        
/// <summary>
        
/// 终结器, 调用虚拟的Dispose方法
        
/// </summary>
        ~***Info()
        {
            Dispose(
false);
        }

        
/// <summary>
        
/// 调用虚拟的Dispose方法, 禁止Finalization(终结操作)
        
/// </summary>
        public void Dispose()
        {
            Dispose(
true);
            GC.SuppressFinalize(
this);
        }

        
/// <summary>
        
/// 虚拟的Dispose方法
        
/// </summary>
        protected virtual void Dispose(bool disposing)
        {
            
if (!disposing)
                
return;
        }
        
#endregion

        
/// <summary>
        
/// ***
        
/// </summary>
        public string *** { getset; } 

 }

例二

因为要缓存起来,所以要序列化

 [Serializable]

public class ***Info 
    {
      
//因为属性也是小写的,所以前面要加_
  private _***
        
/// <summary>
        
/// ***
        
/// </summary>
        public string ***
        {
            
get { return _***; }
            
set { _***= value; }
        }

     }


 

 这两种写法看是一点什么问题都没有。

 

但是用到了wcf 之后就会出现不同的效果。

 

一个返回来的结果是

 

例一。

实休类.属性

XXX.XXX

例二。

 实体类.私有变量

 XXX._XXX

如果将例一修改为可序列化 [Serializable] 也能编译通过。

但返回过来更长。

实体类.XXXC... 什么的。

 

这样一来。调用的人。就郁闷了。到底是什么时候要加 下划线 _字段名  什么时候不要加下划线。

 


其实只要修改一下实体类

  [Serializable]

public  XXX

{public string xxx;}

就可以了。

 

如果跟据要缓存的加了[Serializable]

不缓存的就不加[Serializable]

这个规则也可以的。必竟一个网站,一个平台。缓存的东西不多的。

而现在出现了,一个程序员是所有的都不加[Serializable] 只有要用到缓存的才会加上[Serializable]

而另一个程序员全部都加上[Serializable]

如果来个六个程序员。一部份加,一部份不加。你试试写代码的时候什么时候是要加下划线的。什么时候是不加下划线的。

 

我就与项目经理提这个问题了。

这有什么关系呢?这不是很正常的吗?

能统一的东西为什么不统一一下呢?同样的东西,一下要加下划线,一下不要下划线,谁分的清楚啊?

 

最终还是没有悠修改。原来怎么样就怎么样吧。

 

 

 

 

 

 

 

 

 

posted on 2009-12-19 00:00  hsj2010  阅读(231)  评论(0编辑  收藏  举报