PDA

View Full Version : نمایش پیام yes/no در زمان اجرای کد



sena123
پنج شنبه 28 شهریور 1387, 09:19 صبح
سلام
من می خواهم اطلاعات را ذخیره کنم اول یک جسجو می کنم اطلاعات در بانک وجود دارد یا نه اگر وجود داشت می خواهم یک پیام ظاهر شود در صورت تایید اطلاعات update شود
چطور می توان چنین پیامی را در asp.net و c# نماش داد
در موضوعات ایجاد شده جستجو نموده ام اما پاسخ عملی نیافته ام

ennovation
پنج شنبه 28 شهریور 1387, 18:43 عصر
مشکل تو ظاهر کردن پیغام است یا جستجو در دیتا . بگو تا بگم چیکار کنی !!!!!!!

mp2009
پنج شنبه 28 شهریور 1387, 22:15 عصر
خب اول اطلاعات رو با یه دستور Select بگیر و بزار توی یه SqlDataReader .
بهد هم با این متد میتونی بفهمی داده ای وجود داره یا نه


if (DR.HasRows())
{

}

mp2009
پنج شنبه 28 شهریور 1387, 22:17 عصر
دوست عزیز اینم کد کامل . البته یه مثال هستش.


SqlConnection _Connection = new SqlConnection(DALCLASS.ConnectionString);
SqlCommand _SqlCommand = new SqlCommand();
_SqlCommand.Connection = _Connection;
_SqlCommand.CommandText = "SELECT Role FROM Users Where UserName=@UserName";
_SqlCommand.Parameters.AddWithValue("@UserName", UserName);
_Connection.Open();
SqlDataReader DR = _SqlCommand.ExecuteReader();

if (DR.HasRows())
{
RolName = DR.GetValue(0).ToString();
}

DR.Close();
_Connection.Close();

hashemi85sep
جمعه 29 شهریور 1387, 00:37 صبح
سلام دوست عزیز
شما میخوای پیغام ظاهر کنی یا اینکه دستور برای جستجو توی دیتابیس میخوای؟

sena123
جمعه 05 مهر 1387, 14:45 عصر
می خواهم پیام yes/no پس از نتیجه مثبت جستجو ظاهر شود
عمل جستجو را انجام می دهم اما نمی دانم چطور پیام را نمایش دهم

baran_mehr
جمعه 05 مهر 1387, 15:18 عصر
سلام داداشی خوبی؟
داداشی دوتا راه هست یکیش اینکه از کد استفاده کنی که خیلی هم دستت رو باز میکنه و یه نمونش رو داداش mp2009 گفتن، که میشه همین کار ایشون رو به طرق مختلف انجام داد
و یا از شئ استفاده کنی و مقدار برگشتی خودت رو برسی کنی و اگر مقداری با این شرایطی که میخواستی وجود داشت پیغامی به کاربر بدی که این فیلد هست و میتونید عمل UPDATE رو انجام بدی و یا بر عکس.
اگر مشخص کنی که به چه صورت جستجو رو انجام میدی خیلی بهتره چون دوستان گلمون بهتر میتونن راهنماییت کنن.
حالا گلم از کد استفاده میکنی یا از شئ؟

kezack
جمعه 05 مهر 1387, 18:15 عصر
ببین فکر کنم این بدردت بخوره
http://barnamenevis.org/forum/showthread.php?t=70333

sena123
دوشنبه 08 مهر 1387, 16:51 عصر
سلام با تشکر از راهنمایی هایتان
من برای ذخیره یک رکورد در بانک اول براساس کلید اصلی آن یک جستجو در بانک می کنم و نتیجه را در یک دیتاست می ریزم اگر دیتاست مقدارش صفر باشد یعنی رکوردی با چنین کلید اصلی وجود ندارد و رکورد بدون هیچ مشکلی ذخیره می شود ولی اگر مقدار دیتاست از صفر بیشتر بود معلوم است که مقداری با چنین کلید اصلی قبلا ذخیره شده ****** در این حالت می خواهم یک پیام yes/no ظاهر شود**** در صورت تایید کاربر آن اطلاعات در بانک update شود.
من کد ذخیره را نوشته ام اما کد پیام yes/no را نمی توانم بنویسم هدفم نمایش آن پیام update می باشد
از دوستان عزیز خواهش می کنم مرا راهنمایی کنید

محمدامین شریفی
شنبه 18 آبان 1387, 13:34 عصر
دوست عزیز شما میتونید از دستور message box استفاده کنید
اگر طریقه استفاده از اون رو بلد نبودین بگین تا بهتون نشون بدم البته با اجازه از اساتید گرامی
اولا که لازم نیست از dataset استفاده کنید و الکی منابع سیستمتان را هدر بدهید،شما باید از دستور()executescaler استفاده کنی(اولین سطر و اولین ستون را به شما میدهد).
سپس اگر ()executescaler عددی را باز گرداند،با یک messagebox از کاربر میپرسیم که آیا میخواهد اطلاعاتش را بروز کند،در صورت موافقت کاربر اطلاعات بروز میشود.
الف ) ابتدا باید روی پروژه کلیک راست کرده و add reference را انتخاب کنیم،سپس system.windows.form را انتخاب کنیم.
ب ) این کد را نوشته:


DialogResult rs = MessageBox.Show("?آیا اطلاعاتتان بروز شود", "بروز کردن اطلاعات", MessageBoxButtons.YesNo, MessageBoxIcon.Warning);
if (rs==DialogResult.Yes ) {//your update code
}


پیروز باشید

hashemi85sep
یک شنبه 19 آبان 1387, 13:24 عصر
اولا که لازم نیست از dataset استفاده کنید و الکی منابع سیستمتان را هدر بدهید،شما باید از دستور()executescaler استفاده کنی(اولین سطر و اولین ستون را به شما میدهد).
سپس اگر ()executescaler عددی را باز گرداند،با یک messagebox از کاربر میپرسیم که آیا میخواهد اطلاعاتش را بروز کند،در صورت موافقت کاربر اطلاعات بروز میشود.
الف ) ابتدا باید روی پروژه کلیک راست کرده و add reference را انتخاب کنیم،سپس system.windows.form را انتخاب کنیم.
ب ) این کد را نوشته:


DialogResult rs = MessageBox.Show("?آیا اطلاعاتتان بروز شود", "بروز کردن اطلاعات", MessageBoxButtons.YesNo, MessageBoxIcon.Warning);
if (rs==DialogResult.Yes ) {//your update code
}


پیروز باشید



سلام دوست عزیز
میشه لطف کنین و روش executescaler رو به طور خودمونی توضیح بدین؟
باتشکر از اساتید گرامی

dr_csharp
یک شنبه 19 آبان 1387, 13:38 عصر
سلام دوست عزیز
میشه لطف کنین و روش executescaler رو به طور خودمونی توضیح بدین؟
باتشکر از اساتید گرامی
سلام
همونطور که دوستمون گفتن متد ExecuteScalar نتیجه ی اولین ستون از اولین ردیف command اجرا شده رو بر میگردونه ( البته مقدار بازگشتی از نوع object هست و باید به نوع مورد نیازت convert بشه )
شما میتونی تو command خودتون بیاین و بر اساس Id مورد نظر select بزنید..بنابراین اگه مقداری از قبل وجود داشته باشه شما متوجه خواهید شد :لبخندساده:

محمدامین شریفی
یک شنبه 19 آبان 1387, 15:18 عصر
خیلی ممنون از راهنماییت دوست عزیز
اگه بتونین این توضیحات ر اهمراه با یک مثال توضیح بدین بهتر میشد
با تشکر
دارم یک pdf درست میکنم،که یه قسمتیش رو الان میزارم اینجا
تقدیم به هم ساتراپی خودم:



وارسی پایگاه داده

حالا میخواهیم با کدهای ADO.NET پایگاه داده یمان را پویش کنیم.برای این منظور کد زیر را استفاده میکنیم:


[code]


using System;

using System.Data;

using System.Configuration;

using System.Web;

using System.Web.Security;

using System.Web.UI;

using System.Web.UI.WebControls;

using System.Web.UI.WebControls.WebParts;

using System.Web.UI.HtmlControls;

using System.Web.Configuration;

using System.Data.SqlClient;

using System.Text;

public partial class _Default : System.Web.UI.Page

{

protected void Page_Load(object sender, EventArgs e)

{

string connectionString =

WebConfigurationManager.ConnectionStrings["AW"].ConnectionString;

StringBuilder strReturn = new StringBuilder();

using (SqlConnection sqlCon = new SqlConnection(connectionString))

{

SqlCommand sqlComm = new SqlCommand();

sqlComm.Connection = sqlCon;

sqlComm.CommandType = CommandType.Text;

sqlComm.CommandText =

"SELECT AddressLine1 FROM Person.Address " +

"WHERE (PostalCode = N'98011')";

sqlCon.Open();

SqlDataReader sRead = sqlComm.ExecuteReader();

while (sRead.Read())

{

strReturn.Append("<li>");

strReturn.Append(sRead["AddressLine1"]);

strReturn.Append("</li>");

}

}

litResults.Text = strReturn.ToString();

}


}


[code]


انواع CommandType

3 نوع CommandType که عبارت اند از:
الف ) CommandType.Text با نوشتن این عبارت به ADO میگوییم که میخواهیم دستورsql به صورت درون خطی بنویسیم (inline)،که البته این نوع نوشتن توصیه نمیشو(بدلیل خطر sql injection توسط هکر ها)
ب ) CommandType.StoredProcedure که بهترین و بهینه ترین روش برای وارسی داده هاست.در این روش دستور sql خود را در قسمت StoredProcedure پایگاه داده مینویسیم،سپس در کد ADO.NET چنین مینوسیم: sql_comm.CommandText = "hsp_srch_chap"; و
sql_comm.CommandType= CommandType.StoredProcedure;
ج ) CommandType.TableDirect در این روش باید نام جدول در پایگاه داده وجود داشته باشد.و با اجرای این دستور تمام ردیف های(record) جدول باز گردانده میشود



انواع اجرای دستور

ExecuteNonQuery : این متد برای execute کردن پرسجویی هست که شما نمیخواهید داده ای به عنوان خروجی داشته باشید،به عنوان مثال هنگامی که شما دارید delete,insert,update میکنید،میتوانید از این متد استفاده کنید. این متد تعداد record هایی که تغییر کرده اند را به صورت integer برمیگرداند.
ExecuteReader: این متد یک پرس و جوی select را execute میکند و داده ها در قالب یک شئی datareader برمیگرداند.
ExecuteXmlReader : این متد شبیه EcecuteReader میباشد با این تفاوت که یک xmlreader برمیگرداند.



استفاده از مولفه ها(parameters) در دستور


شما میتوانید مانند کد زیر پارامتر ها را درون دستورهای sql خود قرار دهید:

[code]
sqlComm.CommandText =



"SELECT AddressLine1 FROM Person.Address WHERE (PostalCode = @strZIP)";

[code]



و مانند کد زیر آنرا فراخوانی کنید:

[code][/ltr]
string strParamZIP = "98011";

if (Request.Params["ZIP"] != null)

strParamZIP = Request.Params["ZIP"];


sqlComm.Parameters.Add("@strZIP", strParamZIP);


[code][/ltr]


ببخشید اگر زیاد بود

yekta64
سه شنبه 12 آبان 1388, 15:20 عصر
الف ) ابتدا باید روی پروژه کلیک راست کرده و add reference را انتخاب کنیم،سپس system.windows.form را انتخاب کنیم.
ب ) این کد را نوشته:


DialogResult rs = MessageBox.Show("?آیا اطلاعاتتان بروز شود", "بروز کردن اطلاعات", MessageBoxButtons.YesNo, MessageBoxIcon.Warning);




if (rs==DialogResult.Yes ) {//your update code

}





[/quote]

سلام دوست عزیر میشه لطف کنید در مورد این کد بیشتر توضیح بدبد؟