从 DateTime 到 Int32 的转换无效:
year=Convert.ToString((Convert.ToInt32(sdr["enddate"])-Convert.ToInt32(sdr["begindate"]))/365);
我想得到会员的年数!

解决方案 »

  1.   

    DateTime为什么要转换为int在tostring??
      

  2.   

    无需转换,如下使用就可以,DateTime.Now - DateTime.Now.AddYears(-20)自己替换成你想要的就可以
                TimeSpan span = DateTime.Now - DateTime.Now.AddYears(-20);
                int year = span.Days / 365;
      

  3.   

    sdr["enddate"]  得到的是一个日期吗?
      

  4.   

    如果是:sdr["enddate"].Year-sdr["begindate"].Year
      也就得到相差的年了!
      

  5.   

    TimeSpan span=(DateTime.Now - DateTime.Now.AddYears(sdr["begindate"]))/365;
    int year1=span.Days/365;与“DateTime.Now.AddYears(sdr["begindate"])”最匹配的重载方法具有一些无效的参数
      

  6.   

    TimeSpan span=DateTime.Now - DateTime.Now.AddYears(sdr["begindate"]);
    int year1=span.Days/365;与“DateTime.Now.AddYears(sdr[  "begindate  "])”最匹配的重载方法具有一些无效的参数
      

  7.   

    AddYears鐨勫弬鏁版槸骞达紝鏄竴涓暣鏁?
    璇烽棶妤间富鐨剆dr["begindate"]鏄粈涔堬紵
    濡傛灉鏄棩鏈熺殑瀛楃涓诧紝鍙互杩欐牱
    TimeSpan span=DateTime.Now -Convert.ToDateTime(sdr["begindate"]);
    int year1=span.Days/365;
      

  8.   

    AddYears鐨勫弬鏁版槸骞达紝鏄竴涓暣鏁?
    璇烽棶妤间富鐨剆dr["begindate"]鏄粈涔堬紵
    濡傛灉鏄棩鏈熺殑瀛楃涓诧紝鍙互杩欐牱
    TimeSpan span=DateTime.Now -Convert.ToDateTime(sdr["begindate"]);
    int year1=span.Days/365;
      

  9.   

    the type of parameter in AddYears is integer
    you can code as this
    TimeSpan span=DateTime.Now -Convert.ToDateTime(sdr["begindate"]);
    int year1=span.Days/365;
      

  10.   

    靠,日期怎么能转int呢,想求差,真接用日期相减就可以呀