نقل قول:
وست عزیز آقای mahdis، این کدی رو که نوشتید باید تو program.cs بنویسم یا تو فرم 1؟
بعد اگه تو فرم 1 هست، تو کدوم قسمتش؟
روی پروژه(توی Solution Explorer ) راست کلیک : Add -> Classنقل قول:
کلاس زیرو به پروژه اضافه کنید
Printable View
نقل قول:
وست عزیز آقای mahdis، این کدی رو که نوشتید باید تو program.cs بنویسم یا تو فرم 1؟
بعد اگه تو فرم 1 هست، تو کدوم قسمتش؟
روی پروژه(توی Solution Explorer ) راست کلیک : Add -> Classنقل قول:
کلاس زیرو به پروژه اضافه کنید
سلام.
ممنون از اینکه هر سوالی داشتم جواب دادید.
میشه لطف کنید و یه کمی در مورد کدهای زیر یه توضیحی بدبد؟ آخه من هیچ چیز در مورد کدهای زیر نفهمیدم.
ممنون.
کد:public sealed class Singleton
{
private static readonly Singleton m_Instance = new Singleton();
private int m_a = 0;
static Singleton() { }
public static Singleton Instance
{
get { return m_Instance; }
}
public int A
{
get { return m_a; }
}
}
چندان چیز عجیب غریبی ندارد
اگر توجه کنید یه خصیصه استاتیک بنام Instance وجود دارد که که همین کلاس رو بر می گرداند و با توجه به استاتیکی بودنش شما می تونید بوسیله ی نام کلاس بهش دسترسی پیدا کنید:
و چون کد بالا خود کلاس Singleton رو بر می گردونه بنابراین شما می تونید از خصیصه ها و متد های عمومی این کلاس به شکل زیر استفاده کنید:کد:Singleton.Instance
-----------------------------------------------------------------------------------------------------------------کد:Singleton.Instance.MethodOrProperty
به شکل های ساده تری هم می شود کار شما را انجام داد اما استفاده از الگوی طراحی سینگلتون خوانایی کد رو بالاتر می بره و مهتر اینکه تضمین می کند که فقط یک شی از این کلاس ساخته شده و می توان دسترسی سراسری داشت.
البته من هم یک اشتباهی کردم که سازنده را یادم رفته خصوصی کنم . کد تصحیح شده :
موفق باشیدکد:public sealed class Singleton
{
private static readonly Singleton m_Instance = new Singleton();
private int m_a = 0;
private Singleton() { }
static Singleton() { }
public static Singleton Instance
{
get { return m_Instance; }
}
public int A
{
get { return m_a; }
}
}
دستتون درد نکنه.
من هر وقت مشکلی داشتم و کسی بلد نبوده شما جواب درست رو دادید.
امتحانش می کنم. ان شاءالله که جواب بده.
بازم ممنون.
سلام.
من این روش رو امتحان کردم ولی بازم نشد.
روش دیگه ای نیست که بشه باهاش این کارو کرد؟
راستی من از کدهای شما چیز زیادی نفهمیدم.
می خواستم اگه وقتش رو دارید خط به خط برام توضیحش رو بنویسید.
بعضی ها هم می گن میشه با اضافه کردن چند خط تو program.cs این کارو کرد ولی جواب درستی نگرفتم.
ممنون.
بیا
کد:static class Program
{
/// <summary>
/// The main entry point for the application.
/// </summary>
public static string a="Mohsen";
static void Main()
{
Application.EnableVisualStyles();
Application.SetCompatibleTextRenderingDefault(false);
Application.Run(new Form1());
}
}
کد:MessageBox.Show(Program.a);
سلام.نقل قول:
کدتون به این صورت تغییر بدید:31::
موفق باشید.کد:public static int a;
سلام.
من مثلا می خوام تو 10 تا فرم ثبت اطلاعات داشته باشم.
کدهای زیر باید تو همه فرم ها تکرار بشن:
من می خوام کد ها رو فقط یه بار بنویسم و دیگه تو برنامه برای همیشه تعریف شده باشن.کد:SqlConnection connect = newSqlConnection("connectionstring");
publicstaticSqlCommand print_fi_update;
SqlDataAdapter adp = newSqlDataAdapter();
DataTable dt = newDataTable();
من کدهای بالا رو تو program.cs نوشتم و همونجا تابع زیر رو هم نوشتم:
بعد از تو یه فرم دیگه متغیر print_fi_update رو new کردم و توش مقدار ریختم. ولی دیگه sqlconnection خودم رو صدا نزدم چون یه بار تو program.cs اونو تعریف کردم. بعد با کد زیر تابع رو از همون فرم صدا زدم.کد:public static void dbs(SqlCommand command)
{
command.Connection.Open();
Program.adp.SelectCommand = command;
Program.adp.Fill(dt);
command.Connection.Dispose();
}
ولی وقتی برنامه رو اجرا می کنم و تابع صدا زده میشه ارر زیر رو میده:کد:Program.dbs(Program.print_fi_update);
چکار باید بکنم؟کد:The ConnectionString property has not been initialized.
ممنون.
سلام.
لطفا جواب بدین.
سلام از using استفاده کنید.
کد های زیر را داخل تابع بزارید:
به این صورت:کد:SqlConnection connect = newSqlConnection("connectionstring");
publicstaticSqlCommand print_fi_update;
SqlDataAdapter adp = newSqlDataAdapter();
DataTable dt = newDataTable();
موفق باشید.کد:using(SqlConnection connect = newSqlConnection("connectionstring"))
{
using(SqlDataAdapter adp = newSqlDataAdapter())
{
using(DataTable dt = newDataTable())
{
}
}
}