別のストアド プロシージャの問題に戻って、ワンクリックで送信してから ASP.Net で更新したいのですが、うまくいかないようです..
これが私のクラスのコードです
public void assignofclass(string course, string id)
{
myCon.Open();
SqlCommand saveCmd = new SqlCommand("assignclass", myCon);
saveCmd.CommandType = CommandType.StoredProcedure;
saveCmd.Parameters.Add("@userid", SqlDbType.NChar).Value = id;
saveCmd.Parameters.Add("@course", SqlDbType.NChar).Value = course;
saveCmd.ExecuteNonQuery();
myCon.Close();
}
分離コード:
using ClassLibrary1;
Class1 cs = new Class1();
protected void Button1_Click(object sender, EventArgs e)
{
cs.assignofclass(TextBox1.Text, DropDownList1.SelectedValue);
Response.Write("<script> alert('" + TextBox1.Text + DropDownList1.SelectedValue + "')</script>");
//just to make sure the textbox1 and dropdownlist1 is not giving a null value
}
最後に、ストアド プロシージャ
ALTER PROCEDURE dbo.assignclass
@userid nchar(10),
@course nchar(10)
AS
Update users Set
course = @course
Where userid = @userid
RETURN
ここで何が問題になっているようですか?テーブルを更新できないようですが、これはテーブルです
テーブル名:ユーザー
userid nchar(10)
firstname nchar(20)
middlename nchar(20)
lastname nchar(20)
course nchar(10)
usertype nchar(10)
apassword nchar(20)
grade decimal(18, 2)
myCon
宣言:
namespace ClassLibrary1
{
public class Class1
{
public static string ConStr = @"Data Source=.\SQLEXPRESS;AttachDbFilename=........
SqlConnection myCon = new SqlConnection(ConStr);
私のクラスはこのコードの後のどこかにあるでしょう