2011-07-07 16 views
0

送信ボタンのクリック時に値がSQlテーブルに挿入されるテキストボックスはほとんどありません。しかし、それは私に "オブジェクト参照がオブジェクトのインスタンスに設定されていない"例外を与えます。以下はこれについて書いたコードです。これで私を助けてください。オブジェクトリファレンスがオブジェクトのインスタンスに設定されていませんERROR

contact_new.aspx.cs

protected void btnSubmit_Click(object sender, EventArgs e) 
{ 
    DateTime dtime; 
    dtime = DateTime.Now; 
    string ocode = offercode.Text; 
    string firstname = firstnamepreapp.Text; 
    string lastname = lastnamepreapp.Text; 
    string email = emailpreapp.Text; 
    string phoneno = phonepreapp.Text; 
    string timetocall = besttimepreapp.SelectedItem.Value; 
    string time = dtime.ToString(); 

    //Insert the data into autoprequal table 

    <--- GIVES ME AN ERROR ON THIS LINE ---> 
    Insert.insertINTOautoprequal(ocode, time, firstname, lastname, email, phoneno, timetocall); 
} 

Insert.cs(にApp_Codeクラス)

namespace InsertDataAccess 
{ 
public class Insert 
{ 
    public Insert() 
    { 
     // 
     // TODO: Add constructor logic here 
     // 
    } 
    public static bool insertINTOautoprequal(string code, string time, string first, string last, string email, string phoneno, string timetocall) 
    { 
     bool success = false; 
     SqlConnection conn = new SqlConnection(ConfigurationManager.ConnectionStrings["connstring"].ConnectionString); 
     conn.Open(); 
     string query = "Insert INTO autoprequal(offercode, timeofday, firstname, lastname, emailID, phone, besttimetocall) Values(@offercode, @time, @first, @last, @email, @phoneno, @timetocall);"; 
     SqlCommand cmd = new SqlCommand(query, conn); 
     try 
     { 
      cmd.Parameters.AddWithValue("@offercode", code); 
      cmd.Parameters.AddWithValue("@time", time); 
      cmd.Parameters.AddWithValue("@first", first); 
      cmd.Parameters.AddWithValue("@last", last); 
      cmd.Parameters.AddWithValue("@email", email); 
      cmd.Parameters.AddWithValue("@phoneno", phoneno); 
      cmd.Parameters.AddWithValue("@timetocall", timetocall); 
      if (cmd.ExecuteNonQuery() == 1) success = true; 
      else success = false; 

      return success; 
     } 
     catch 
     { 
      throw; 
     } 
     finally 
     { 
      conn.Close(); 
     } 
    } 
} 

}コードを

+0

いつもこれを言いますか、時にはだけですか?これは通常、セッションが終了したときに発生します。 –

+0

@Joe私はC#とSQLを手に入れています。だから私は前にこの例外を経験したことはありません。 – user787937

+0

それをデバッグし、 'insertINTOautoprequal'メソッドに入ります。それはエラーがある場所です。 –

答えて

2

ステップ、誤差が最も可能性が高いからアップバブリングされますSQL挿入ルーチン。私は、接続文字列が設定ファイルから引き出されていないと推測しましたが、それを踏まずに、野生の推測です。 Visual Studioでデバッグする方法を学ぶには時間がかかるでしょう。なぜなら問題にならないものを簡単に見つけ出して、問題の可能性が高いものに集中できるようにするためです。

+0

私は同じことを仮定しました。 –

+0

私もやった---しかし、私は-1を得た。 :( –

+0

@ek_nyあなたが質問としてコメントを投稿したからです –

関連する問題