public class Stat_Class
    {
        private String ShangPinID; //商品ID
        private String Sp_Name; //商品名称
        private decimal Sp_Price; //商品价格
        private int Sp_Quan; //商品数量        public string ItemID
        {
            get { return ShangPinID; }
            //set { ShangPinID = value; }
        }        public string ShangpinName
        {
            get { return Sp_Name; }
            //set { Sp_Name = value; }
        }
        //构造方法,初始化商品的各个属性
        public Stat_Class(string ItemID, string ShangpinName, decimal Price, int Quantity)
        {
            ShangPinID = ItemID;
            Sp_Name = ShangpinName;
            Sp_Price = Price;
            Sp_Quan = Quantity;
        }1.这个构造函数 是赋给字段的 我看到有些书上是直接赋给属性 说这样安全 有些属性是只读或只写的 .2.我在生成静态页面的时候
protected void DataList1_ItemCommand(object source, DataListCommandEventArgs e)
{
      //生成静态页面代码 略
      //转向静态页面
}上面的是正确的也是 但是 看上面的代码如果我第二次点击 全部走一边重新成一个覆盖已经成的有的文件他们文件名相同 能不能在第二次的时候直接转向啊 不要用数据库 我第一次生成了 关闭网页 在打开 也是直接转向 如果判断文件夹是否有该文件也是在静态页面之后?还有就是我的静态模版定义好了 重新生成的静态页面是不是就从当了数据库啊 我静态页面全部保存在Html文件夹里面 我一打开的时候太多了 你们是这样子的吗 还是有什么好的帮法啊 还是你们把这些静态页面这么处理一下啊??谢谢 去现在的全部分了

解决方案 »

  1.   

    构造函数是把值赋给属性好还是赋给字段好
    ========================================
    赋给字段好,赋给属性其实还是要执行字段的一次set操作,而且属性一般是让外界访问的
      

  2.   

    1.这个构造函数 是赋给字段的 我看到有些书上是直接赋给属性 说这样安全 有些属性是只读或只写的 .---------
    a. 是的,给属性会比较安全一点,因为你的属性可能会做一些验证机制,比如必须大于 0,如果直接给字段,你需要确保再构造器里也做响应的检查;
    b. 直观 上看这样会有点性能的损失,因为属性本质是方法,肯定没有直接访问字段的快,但很多情况下,可以忽略不计
    c. 对于类设计者来说,你应该非常清楚你的类设计原则以及初始化规则,
    问题二硬是没看懂
      

  3.   

    问题二 
    是点击按钮生成静态页面 转向 第二次点击的时候 有生成静态页面 转向 我想第二次点击的时候直接转向 因为第一次的时候静态页面已经生成了 
    判断文件夹中是否存在 在生成的静态也后才能得到文件名 
    用数据库来存储 这个页面是否已经 生成过了 有点浪费 
    有没有生成了后 把一个bool值赋值位True 在重新关闭页面 重新打开 这个被赋得值任然是True也就是按钮同时控制了"生成静态页面"和"转向刚生成的静态页" 第一次点击的时候我要两项都发生 
    但是第二次点击的时候 只要转向就好了 不要在"生成静态页了"按钮点击的第一次和第二次发生的事情不一样 不用数据库 里面加逻辑 可以实现吗??
    谢谢