对于insert 你也应该用  Database.ExecuteNonQuery(sql, prams); 
如果想要返回刚才生成的新纪录的id你应该再次进行一次查询:
' Get the new id: 
sql="SELECT @@IDENTITY AS id" 
Set rs = cn.Execute(sql) 
id= rs.Fields("id").value 
或 Convert.ToInt32(Database.ExecuteDataSet(sql).Tables[0].Rows[0][0])你会获取新的id

解决方案 »

  1.   

    1: 调试的话应该用VS自带的ASP.NET Development Server嘛~
    2:把try/catch块去掉,看看是不是有报错
      

  2.   

    从你的  public int Add(AnnounceInfo model) 
    这段代码来看,代码编写没有任何问题,
    肯定你调用add方法时参数值错误,一般的情况是时间参数问题或数据类型不正确,或者你得数据库不允许为空
      

  3.   

    调试看看错在哪啊,监视,拿SQL语句到查询分析器中调试
      

  4.   

    支持4楼的想法,以前我也经常遇到这样的问题,有可能是sql语句本身的错误!
    在查询分析器中试一下!