C#中
#if (Request["step"].ToString() == "2")
..............
#endif为什么提示出错啊.
那条件编译应该怎么写?

解决方案 »

  1.   

    目的就是可以根据参数选择定义的东西
    protected System.Web.UI.WebControls.CustomValidator textBoxUserNameValidator2;
    protected System.Web.UI.WebControls.CustomValidator textBoxPasswordValidator1;
    protected System.Web.UI.WebControls.RegularExpressionValidator ZipCodeValidator;
    protected System.Web.UI.WebControls.RegularExpressionValidator MobileValidator;
    protected System.Web.UI.WebControls.CustomValidator dropDownListSexvalidator;
    protected System.Web.UI.WebControls.Label Label1;
    protected Design_ZDF_Web.modules.DropDownListDatePicker BornDate;
    #if (Request["step"].ToString() == "2")
    protected Design_ZDF_Web.modules.CascadeSelect cascadeSelectCountry;
    protected Design_ZDF_Web.modules.CascadeSelect cascadeselectProvince;
    protected Design_ZDF_Web.modules.CascadeSelect cascadeselectCity;
    DataEnginer myDE = new DataEnginer(System.Configuration.ConfigurationSettings.AppSettings["ConnectionString"]);
    #endif
      

  2.   

    如果是c#的话怎么能有if....end if呢,vb。net的才是
    c#是
    if (Request["step"].ToString() == "2")
    {
    }
      

  3.   

    那我应该怎么解决这个问题,就是根据request参数的不同,而定义不同的对象.
      

  4.   

    条件编译是在编译时判断的,编译时无法判断request的参数。因此应放在运行时判断。改成:
    if (Request["step"].ToString() == "2")
    {
      //do your things
      ..............
    }
      

  5.   

    class name
    {
    //成员变量
    int a;
    string b;
    if (Request["step"].ToString() == "2")
    {
      string c;    int d;
      ..............
    }//成员函数
    private void asd();{
    }
    }这么写对吗,有点怀疑.