日期获取,该怎么解决

日期获取
 string strSql = (@"select a.bh,c.ksmc as ks,b.gzmc as gzlx,kssj,d.zgxm as apr,e.zgxm as zxr,f.zgxm as qrr,zy,xxms,zxsj,jssj,g.bz1 as wcqk,h.bz1 as zy_flag,i.bz1 as diff from gzrz as a
              left join  gzlxb as b on a.gzlx    = b.bh 
              left join  ksb   as c on a.ks      = c.xh
              left join  yggl  as d on a.apr     = d.zggh
  left join  yggl  as e on a.zxr     = e.zggh
  left join  yggl  as f on a.qrr     = f.zggh
              left join  zdb   as g on a.wcqk    = g.xh
  left join  zdb   as h on a.zy_flag = h.xh 
  left join  zdb   as i on a.diff    = i.xh  
                           where a.kssj between '2014-01-02' and '2014-02-01'              
  order by wcqk desc,kssj desc");
想在加一个条件---上面语句是写在dal的
在c#里where语句后面的该怎么写呢

就是想获取当前日期往后推一个月或当前日期从1号到30号

------解决思路----------------------
使用string.format  函数, where后面的语句最为占位符,再调用dal方法的时候 给一个参数,例如,

string sql = string.format("select   省略.......  from  table where {0}",param);

param 为条件语句,根据需要拼接。 
------解决思路----------------------
引用:
 public DataTable GetData()
        {
            return new GzrzDAL().GetData();
        }

我bll里是这样的

窗口里是
public void BindDGV()
        {
            GzrzBLL getdb = new GzrzBLL();
            this.dgv.DataSource = getdb.GetData();
         }

怎么给呢

给方法传参 不会??GetData(param)   往下传递,知道执行sql的方法。
------解决思路----------------------
引用:
的却不会

有两个日期只需要一个参数?

两个参数或者一个string数组或者一个字符串都可以。
------解决思路----------------------
当前日期加1天:dadeadd(day, 1, getdate())
当前日期加1月:dadeadd(month, 1, getdate())
------解决思路----------------------
dateadd,联想的键盘实在难用。。。
------解决思路----------------------
前日期加1天:dadeadd(day, 1, getdate())
当前日期加1月:dadeadd(month, 1, getdate())