الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

جنني.. إضافة ال user & pass للConnectionString وقت تشغيل البرنامج؟!

مغلق
بدأه عبدالله المنصوري في 19 فبراير 2007 · 5 رد · 1,240 مشاهدة · في ADO.NET
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

السلام عليكم

عملت برنامج يقوم بالاتصال بقاعدة بيانات SQL server، ولا أريد وضع اليوزرنيم والباسوورد ضمن الكونكشن سترينغ في ملف app.config ..

بل أريد أن يقوم المستخدم بإدخال اسم المستخدم وكلمة السر من خلال فورم صغير مخصص عند بداية تشغيل البرنامج..

بحثت في كل مكان، ولي أسبوع أبحث وأقرأ بدون أي نتيجة..

ومش قادر أتصور إن هذه الميزة البسيطة غير موجودة في الفيجوال ستوديو2005 !!

#2

try this, i don't know if this would be enough for you: first you must have a connection string written manually. In other words you should create a new instance of a connection when the "lets say the software started" so make a textbox where the user enters the username "un" and password "pass". Then write this in order to create a new connection:

System.Data.SqlClient.SqlConnection con = new System.Data.SqlClient.SqlConnection("Data Source=SERVER;Initial Catalog=DATABASE;Integrated Security=True;User="+un.Text+";Pass="+pass.Text+";");

but i am not sure about how username is written in the connection "User or user or username" and the same for the password. i wish this could be beneficial

#3
http://www.sqlstrings.com/

"خيركم من تعلم العلم وعلمه". ..........استغفر الله. ........ اللهم صلي وسلم على سيدنا محمد

احمد عبد الحميد ابوغرارة

CodeGuru CodeProject CGTalk

#4

وعليكم السلام ورحمة الله وبركاته.

يمكن استخدام الـ SqlConnectionBuilder لبناء الـ ConnectionString بطريقة يسيرة لا ينتج عنها أخطاء. أنا كتبت لك الكود التالي, فشاهده وغير ما يلزم :

SqlConnectionStringBuilder yourConnectionBuilder = new SqlConnectionStringBuilder();

yourConnectionBuilder.DataSource = "Your server or use dot for local";
yourConnectionBuilder.InitialCatalog = "Your database";
yourConnectionBuilder.PersistSecurityInfo = false;
yourConnectionBuilder.UserID = yourTextBox1.Text;
yourConnectionBuilder.Password = yourTextBox2.Text;

SqlConnection yourConnection = new SqlConnection(yourConnectionBuilder.ConnectionString);

try
{
yourConnection.Open();
}

catch (SqlException sqlEx)
{
if (sqlEx.Number == 18456)
{
//MessageBox.Show("Login failed");
}
else
{
foreach (SqlError sqlEr in sqlEx.Errors)
{
//MessageBox.Show("Error number: " + sqlEr.Number + " Message:" + sqlEr.Message);
}
}
}

catch (Exception genEx)
{
MessageBox.Show(genEx.Message);
}

finally
{
yourConnection.Close();
}

#Read

http://MoutazShams.blogspot.com

projects003.gif

أعتذر عن التغيب هذه الأيام نظرا للانشغال المريب

#5

الإخوة الأفاضل، أشكركم جميعا جزاكم الله خيرا..

لكن ما أقصده هو ليس ما وضعتم له الحلول، الحلول التي وضعتموها سهلة جداً ويسيرة وهي تختص بالكونكشن سترينغ للاستخدام اليدوي، وما أعنيه هو تغيير الكونكشن سترينغ في ملف app.config وهو الكونكشن سترينغ الذي يمكنني استخدامه لملئ التيبل أدابترز وبالتالي البايندينغ سورسز الخ..

بمعنى آخر، أنا قمت بإنشاء الكونكشن سترينغ من خلال القائمة (Data - Add new Data source) وعملت مشروع كبير وأخذ مني وقت طويل وإلى الآن لم ينتهي، وفي النهاية لم أعرف كيف أعدل في الكونشن سترينغ الذي يستخدمه أكثر من ثلاثين تيبل أدابتر، وقريب من مائة داتابايندينغ سورسز..

أتمنى أن المسألة اتضحت أكثر..

#6

استخدم ملف DLL وضع فيه الكونكشن بتاعك

هذا الموضوع مغلق.

مواضيع مشابهة