PDA

View Full Version : جلوگیری از خطا



shakiba_12
سه شنبه 08 شهریور 1384, 14:45 عصر
من در دیتابیس یک فیلد را primery key کردم و می خوام موقع رجیستر کاربر اگر ای دیش تکراری بود به اون پیغام خطا بده
توی وی بی با find کار میشد تو دات نت رو نمی دونم

shakiba_12
پنج شنبه 10 شهریور 1384, 23:16 عصر
یعنی هیچکس چیزی نمی دونه

Behrouz_Rad
جمعه 11 شهریور 1384, 00:27 صبح
یک راهش اینه:


DataView view = new DataView(ds.Tables["myTable"]);
int rowIndex = view.Find("myMatch");
if (rowIndex != -1)
{
Response.WriteLine("match found.");
}
else
{
.
.
.

و یک راه دیگه:


ds.Tables["myTable"].DefaultView.RowFilter = "myField = 'myMatch'";

یک راه غیر اصولی هم اینه که یک ساختار Try Catch ایجاد کنی و اگر خطایی اتفاق افتاد متوجه میشی که ID قبلا ایجاد شده.

موفق باشید.

shakiba_12
جمعه 11 شهریور 1384, 12:28 عصر
یک راهش اینه:


DataView view = new DataView(ds.Tables["myTable"]);
int rowIndex = view.Find("myMatch");
if (rowIndex != -1)
{
Response.WriteLine("match found.");
}
else
{
.
.
.

و یک راه دیگه:


ds.Tables["myTable"].DefaultView.RowFilter = "myField = 'myMatch'";

یک راه غیر اصولی هم اینه که یک ساختار Try Catch ایجاد کنی و اگر خطایی اتفاق افتاد متوجه میشی که ID قبلا ایجاد شده.

موفق باشید.
ممنون ولی من این کد رو می نویسم و ارور میده
فکر کنم یه خط کد رو جا انداختم
Dim ds As DataSet
Dim view As DataView
Dim rowindex As Integer
view = New DataView(ds.Tables("tbluser"))
rowindex = view.Find(txtblogtitle)
If rowindex = -1 Then
Response.Write(".....")
Else

Behrouz_Rad
جمعه 11 شهریور 1384, 15:40 عصر
اولا‏، همیشه خطایی رو که اتفاق می افته بنویس تا زودتر بشه مشکل رو حل کرد.
دوما، شما DataSet ات رو پر نکردی (یا شاید ناقص نوشتی).

shakiba_12
یک شنبه 13 شهریور 1384, 11:37 صبح
اولا‏، همیشه خطایی رو که اتفاق می افته بنویس تا زودتر بشه مشکل رو حل کرد.
دوما، شما DataSet ات رو پر نکردی (یا شاید ناقص نوشتی).
Object reference not set to an instance of an object.
این ارور رو میده

Identifier
شنبه 23 مهر 1384, 18:05 عصر
دستاست رو درس مقدار دهی نکردی