متغییر عمومی برای کانکشن استرینگ
سلام علیکم؛
چگونه می شود برای همه فرم های یک کانکش استرینگ عمومی تعریف کرد
تا در هر فرم با صدا زدن نام متغیر cnn معتبر باشد...
این کانکش در چه قسمتی باید نوشته شود ؟
من در حال حاضر به ازای هر فرم چنین خط دستور تعریف کردم:
SqlConnection
cnn = newSqlConnection("Data Source=.\\sqlexpress;Initial Catalog=anbarDB;Integrated Security=True;Pooling=False");
نقل قول: متغییر عمومی برای کانکشن استرینگ
با سلام
بهترین روشی که توصیه شده استفاده از یک فایل app.config هست. کافیه اونجا بذارید و هرجایی که خواستید ازش استفاده بکنید. برای امنیت کار هم میتونید از Encrypt and Decrypt استفاده بکنید.
فرضا اگر این کانکشتن استرینگ ما در فایل app.config باشه :
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<connectionStrings>
<add name="Test" connectionString="Data Source=.;Initial Catalog=MyConnection;IntegratedSecurity=True" providerName="System.Data.SqlClient" />
</connectionStrings>
</configuration>
به این روش میتونید اون رو بخونید :
var connection = System.Configuration.ConfigurationManager.Connecti onStrings["Test"];
لازم به ذکر هست که رفرنسس System.Configuration رو هم باید اضافه بکنید
موفق باشید
نقل قول: متغییر عمومی برای کانکشن استرینگ
اگه با کلاس بنویسی میتونی اینکارو کنی
نقل قول: متغییر عمومی برای کانکشن استرینگ
سلام دوست من
کار راحتیه Program.cs رو باز کن و بعد از Using کتابخانه SqlClient یه متغیر کانکشن به صورت زیر بساز :
using System;
using System.Collections.Generic;
using System.Linq;
using System.Windows.Forms;
using System.Data.SqlClient;
namespace Create
{
static class Program
{
/// <summary>
/// The main entry point for the application.
/// </summary>
[STAThread]
static void Main()
{
Application.EnableVisualStyles();
Application.SetCompatibleTextRenderingDefault(fals e);
Application.Run(new Form1());
}
public static SqlConnection cnn = new SqlConnection("Data Source=.\\sqlexpress;Initial Catalog=anbarDB;Integrated Security=True;Pooling=False");
}
}
خوب حالا هر فرم که نیاز بهش داشتی لازمه فقط بهش اشاره کنی مثلا اینطوری :
private void Form1_Load(object sender, EventArgs e)
{
SqlCommand cmd = new SqlCommand("select * from list", Program.cnn);
}
یا راه مبتدی ترش :
private void Form1_Load(object sender, EventArgs e)
{
Program.cnn.Open();
SqlCommand cmd = new SqlCommand();
cmd.Connection = Program.cnn;
cmd.CommandText = "select * from list";
//ادامه کدها
}
البته به نظر من یه کلاس بنویس و کل کارهاتو داخل اون بنویس بعد مثلا دیتاگرید با دستور sql رو برای تابع تو کلاست بفرست و اون دیتاگریدت رو با مقادیر پر کنه,1 بار کد تو کلاس نوشتی تو همه فرمهات میشه ازش استفاده کرد.
موفق باشی
بایت بایت
نقل قول: متغییر عمومی برای کانکشن استرینگ
سلام ساده ترین راه و کار آمد ترین راه اینکه که شما تو اولین فرم تون که ظاهر میشه زیر قسمت public partial class login : Form (اسم فرم من login است ) خط کد زیر را بنویسید. اینکار باعث میشه یه متغییر عمومی تو کل برنامه باشه و هر موقع خواستید ابتدا اسم فرم و بعدا متغییر عمومی را بنویسید(اینطوری login.con).
public static OleDbConnection con = new OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0; Data Source=db.mdb");
یه چیز دیگه هم اینکه بانک من داخل فایل debug است و احتیاج به آدرس دهی بانک نداره اینکار باعث میشه که شما هر جایی که بانک و برنامه باشه خطایی صورت نگیره