Trung Tâm Đào Tạo Mạng Máy Tính Nhất Nghệ   Trung Tâm Đào Tạo Mạng Máy Tính Nhất Nghệ
Trang Chủ Giới Thiệu Chương Trình Học Tài Liệu Tin Tức F.A.Q Lịch Khai Giảng Học Phí Việc Làm Liên Hệ

Go Back   Trung Tâm Đào Tạo Mạng Máy Tính Nhất Nghệ > WEB - ĐỒ HỌA - LẬP TRÌNH > Web Development > ASP/ASP.NET(C#, VB.NET)
Đăng Ký Thành Viên Thành Viên Lịch Ðánh Dấu Ðã Ðọc

Vui lòng gõ từ khóa liên quan đến vấn đề bạn quan tâm vào khung dưới , trước khi đặt câu hỏi mới.


Trả lời
 
Ðiều Chỉnh
  #1  
Old 18-03-2012, 14:51
thongchau thongchau vẫn chưa có mặt trong diễn đàn
Thành Viên Mới
 
Tham gia ngày: Nov 2010
Tuổi: 25
Bài gởi: 16
Thanks: 5
Thanked 0 Times in 0 Posts
Giúp sửa lỗi Input string was not in a correct format trong DataGrid

Tôi có database như sau và đã có dữ liệu.


Sau đây là code trang aspx
using System.Data.SqlClient;

public partial class admin_UserUD : System.Web.UI.Page
{
SqlConnection conn = new SqlConnection("Data Source=.\\SQLEXPRESS;AttachDbFilename=|DataDirectory|\\Datab ase.mdf;Integrated Security=True;User Instance=True");
SqlDataAdapter ad;
DataSet ds = new DataSet();
static DataTable dt = new DataTable();

protected void Page_Load(object sender, EventArgs e)
{
if(Session["user"] == null)
{
Response.Redirect("Default.aspx");
}
if(IsPostBack == false)
{
ad = new SqlDataAdapter("SELECT id,Username,Password,Chucvu,DiaChi,Email,DienThoai,NgaySinh FROM [ThanhVien]",conn);
ad.Fill(ds, "s");
dt = ds.Tables["s"];
DataGrid1.DataSource = dt;
DataGrid1.DataBind();
}

}
protected void btthem_Click(object sender, EventArgs e)
{
if(txtuser.Text == "")
{
lbmessage.Text = "Phải nhập tên User";
}
else if(txtpass.Text == "")
{
lbmessage.Text = "Phải nhập password";
}
else
{

SqlDataSource2.InsertParameters["Username"].DefaultValue = txtuser.Text;
SqlDataSource2.InsertParameters["Password"].DefaultValue = txtpass.Text;
SqlDataSource2.InsertParameters["Chucvu"].DefaultValue = drlchucvu.SelectedValue.ToString();
SqlDataSource2.Insert();
Response.Redirect("UserUD.aspx");
}
}
static int num;
protected void Edit(object source, DataGridCommandEventArgs e)
{
num = Convert.ToInt16(e.Item.Cells[1].Text.ToString());
DataGrid1.EditItemIndex = e.Item.ItemIndex;
DataGrid1.DataSource = dt;
DataGrid1.DataBind();
}
protected void Cancel(object source, DataGridCommandEventArgs e)
{
DataGrid1.EditItemIndex = -1;
DataGrid1.DataSource = dt;
DataGrid1.DataBind();
}
protected void Update(object source, DataGridCommandEventArgs e)
{

TextBox t1, t2, t3, t4, t5, t6, t7, t8;
t1 = (TextBox)e.Item.Cells[1].Controls[0];
t2 = (TextBox)e.Item.Cells[2].Controls[0];
t3 = (TextBox)e.Item.Cells[3].Controls[0];
t4 = (TextBox)e.Item.Cells[4].Controls[0];
t5 = (TextBox)e.Item.Cells[5].Controls[0];
t6 = (TextBox)e.Item.Cells[6].Controls[0];
t7 = (TextBox)e.Item.Cells[7].Controls[0];
t8 = (TextBox)e.Item.Cells[8].Controls[0];
SqlCommand cmd = new SqlCommand("UPDATE ThanhVien SET id="+t1.Text+"Username="+t2.Text+",Password="+t3.Text+",Chuc Vu="+t4.Text+",DiaChi="+t5.Text+",Email="+t6.Text+",DienThoa i="+t7.Text+",NgaySinh="+t8.Text+" WHERE id=" +num,conn);
conn.Open();
cmd.ExecuteNonQuery();
ad = new SqlDataAdapter("SELECT * FROM ThanhVien", conn);
ad.Fill(ds, "s");
dt = ds.Tables["s"];
DataGrid1.EditItemIndex = -1;
DataGrid1.DataSource = dt;
DataGrid1.DataBind();
}
}
-------------
Mỗi lần tôi nhấn Edit trong DataGrid thì bị báo lỗi Input string was not in a correct format ở dòng num = Convert.ToInt16(e.Item.Cells[1].Text.ToString()); , mong được sự giúp đỡ của các bạn để giải quyết lỗi
Trả Lời Với Trích Dẫn
Sponsored links
  #2  
Old 19-03-2012, 23:37
giacatiensinh giacatiensinh vẫn chưa có mặt trong diễn đàn
Khám Phá
 
Tham gia ngày: Jan 2010
Tuổi: 25
Bài gởi: 237
Thanks: 2
Thanked 73 Times in 53 Posts
Bạn debug thử xem lúc hạy thì e.Item.Cells[1].Text.ToString() nó ra cái gì.
Nếu không biết debug thì bạn sửa lại là Respone.write(e.Item.Cells[1].Text.ToString()) ở cái dòng bị lỗi. Rồi sau đó mới convert.toint
__________________
Tiền không là tất cả nhưng không có tiền thì không có tất cả.
Trả Lời Với Trích Dẫn
  #3  
Old 21-03-2012, 23:09
thongchau thongchau vẫn chưa có mặt trong diễn đàn
Thành Viên Mới
 
Tham gia ngày: Nov 2010
Tuổi: 25
Bài gởi: 16
Thanks: 5
Thanked 0 Times in 0 Posts
Mình đã làm theo cách bạn hướng dẫn nhưng nó không hiện ra gì và vẫn lỗi ngay đó, bạn có thể hướng dẫn chi tiết hơn không. Thanks
Trả Lời Với Trích Dẫn
  #4  
Old 21-03-2012, 23:24
giacatiensinh giacatiensinh vẫn chưa có mặt trong diễn đàn
Khám Phá
 
Tham gia ngày: Jan 2010
Tuổi: 25
Bài gởi: 237
Thanks: 2
Thanked 73 Times in 53 Posts
"UPDATE ThanhVien SET id="+t1.Text+"Username="+t2.Text+",Password="+t3.Text+",Chuc Vu="+t4.Text+",DiaChi="+t5.Text+",Email="+t6.Text+",DienTho a i="+t7.Text+",NgaySinh="+t8.Text+" WHERE id=" +num,conn

Trước username thiếu dấu phẩy.
Bạn nên dùng parameter đừng viết theo kiểu nối chuỗi này nhé.
__________________
Tiền không là tất cả nhưng không có tiền thì không có tất cả.
Trả Lời Với Trích Dẫn
Sponsored links
Trả lời

Bookmarks

Ðiều Chỉnh

Quyền Sử Dụng Ở Diễn Ðàn
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is Mở
Smilies đang Mở
[IMG] đang Mở
HTML đang Tắt

Chuyển đến

Similar Threads
Ðề tài Người Gởi Chuyên mục Trả lời Bài mới gởi
Xử lý lỗi máy tự khởi động sutivnn Mẹo Vặt Máy Tính 0 17-03-2011 15:26
Tìm hiểu các số Sequence và số ACK, Destination Port và Source Port trong TCP Header vuivemai KHO LAB NHẤT NGHỆ 5 04-11-2010 06:48
[Help] Help me toanminhtran48 Những Vấn Đề Khác 11 24-03-2010 19:11



Múi giờ GMT +7. Hiện tại là 02:29
Powered by: vBulletin Version 3.8.7
Copyright ©2000 - 2014, Jelsoft Enterprises Ltd.
Ad Management by RedTyger