MVC 4에서 C #을 사용하여 SQL 테이블에 일부 값을 삽입하고 있습니다. 실제로 값을 삽입하고 마지막으로 삽입 된 레코드의 'ID'를 반환하고 싶습니다. 다음 코드를 사용합니다.
public class MemberBasicData
{
public int Id { get; set; }
public string Mem_NA { get; set; }
public string Mem_Occ { get; set; }
}
ID는 삽입시 데이터베이스에서 자동으로 증가합니다.
public int CreateNewMember(string Mem_NA, string Mem_Occ )
{
using (SqlConnection con=new SqlConnection(Config.ConnectionString))
{
using(SqlCommand cmd=new SqlCommand("INSERT INTO Mem_Basic(Mem_Na,Mem_Occ) VALUES(@na,@occ)",con))
{
cmd.Parameters.AddWithValue("@na", Mem_NA);
cmd.Parameters.AddWithValue("@occ", Mem_Occ);
con.Open();
int modified = cmd.ExecuteNonQuery();
if (con.State == System.Data.ConnectionState.Open) con.Close();
return modified;
}
}
}
나는 ExecuteNonQuery
행에 영향을 미치는 숫자를 나타냅니다. 그 대신에
int modified = (int)cmd.ExecuteScalar();
하지만 작동하지 않습니다. 이 문제를 해결하도록 도와주세요. 그리고 cmd.ExecuteInsertAndGetID()
(내 코드로 작동하지 않는) 같은 코드가 있습니까 ?
InsertedID
입니까?