نوشته شده توسط
Mahmoud Zaad
ببینید این خطا معنیش اینه که دیتاتیبل شما خالیه یعنی توی سطر 0 هیچ اطلاعاتی وجود نداره. دیتاتیبل شما هم که از کوئری پر میشه بنابراین سلکتی که شما زدید هیچ سطر رو پیدا نکرده. شما الان همین کوئری رو تو خود sql server managment studio اجرا کنید ببینید چیزی پیدا میکنه یا نه.
خب من کد رو به ی مرحله عقب تر بردم این کد منه کاربر ثبت میشه حالا اگه بخوام این کاربر با سطح دسترسی من اعمال بشه باید چه کدی بزنم؟ خودم ی کد زدم خطا بالا رو داد ولی الان اون کد رو حالت توضیحات دراوردم که شماها کمکم کنین
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
namespace final_doctor
{
public partial class login : Form
{
public login()
{
InitializeComponent();
DataBase_SQL.Server = "";
DataBase_SQL.DataBaseName = "finaldoctor";
}
private void button1_Click(object sender, EventArgs e)
{
// mainform m = new mainform();
//m.Show();
//---------------------------
if (txt_Pass.Text == "")
{
MessageBox.Show("لطفا رمز عبور را وارد نمایید", "رمز عبور", MessageBoxButtons.OK, MessageBoxIcon.Stop);
txt_Pass.Text = "";
txt_Pass.Focus();
return;
}
//---------------------------
User U = new User();
try
{
U.UserName = txt_UserName.SelectedValue.ToString();
U.Password = txt_Pass.Text ;
}
catch (Exception ex)
{
MessageBox.Show(ex.Message, "اطلاعات نادرست", MessageBoxButtons.OK, MessageBoxIcon.Stop);
return;
}
if (!U.IsCorrectUser())
{
MessageBox.Show("رمز عبور اشتباه است", "رمز عبور", MessageBoxButtons.OK, MessageBoxIcon.Stop);
txt_Pass.Text = "";
txt_Pass.Focus();
return;
}
else
{
this.Hide();
mainform Form = new mainform ();
Functions.UserName = U.UserName;
this.Hide();
Form.Show();
}
}
private void button2_Click(object sender, EventArgs e)
{
Application.Exit();
}
private void login_Load(object sender, EventArgs e)
{
User U = new User();
U.ShowUsers(txt_UserName);
if (txt_UserName.Items.Count == 0)
{
MessageBox.Show("تا کنون هیچ کاربری ایجاد نشده است", "کاربر سیستم", MessageBoxButtons.OK);
Application.Exit();
}
}
private void txtname_TextChanged(object sender, EventArgs e)
{
}
}
}
این کد بالا مربوط به کد لاگین منه که به درستی کاربر رو اضافه میکنه چندتا کاربر اضافه کردم و داخل sql دیدم که ثبت شدن