سلام.
ممنون که جواب دادید. اما میشه یه کمی هم در مورد استفاده از using توضیح بدین. اینکه مثلا تفاوت کد شما که از using استفاده کردید و کد من که بدون using هست چیه؟
و اینکه چه مواقعی باید از using استفاده کنیم؟
ممنون از لطف شما.
Printable View
سلام.
ممنون که جواب دادید. اما میشه یه کمی هم در مورد استفاده از using توضیح بدین. اینکه مثلا تفاوت کد شما که از using استفاده کردید و کد من که بدون using هست چیه؟
و اینکه چه مواقعی باید از using استفاده کنیم؟
ممنون از لطف شما.
وقتی از using استفاده می کنی خودکار بعدش اون متغیر رو آزاد می کنه و از بین می بره
وقتی از using استفاده می کنیم که بعد از یه عملیاتی دیگه به اون متغیر ( محتواش ) نیاز نداریم
سلام.
ممنون.
سلام.
من الان کدهای زیر رو نوشتم ولی ارر میده.
البته کد ها رو تو program.cs نوشتم.
اررش هم اینه:کد:
using (publicstaticSqlConnection connect = newSqlConnection("Data Source=.\\SQLEXPRESS;AttachDbFilename=\"G:\\C#\\timer\\timer\\timer.mdf\";Integrated Security=True;User Instance=True"));
{
using (publicstaticSqlDataAdapter adp = newSqlDataAdapter());
{
using (publicstaticDataTable dt = newDataTable());
{
using (publicstaticSqlCommand selectfi = newSqlCommand("Select * from fi",connect));
{
using (publicstaticSqlCommand print_fi_update);
{
}
}
}
}
}
راستی به دوتا کروشه بسته آخری هم گیر داده.کد:Error 1 Invalid token 'using' in class, struct, or interface member declaration G:\C#\timer\timer\Program.cs 17 9 timer
سلام.
لطفاً اون public static رو پاک کنید و از کدها در تابع استفاده کنید نه به صورت عمومی.
دقت کنید یه سری از کلاس ها از using پشتیبانی نمیکنند.
شما فقط اونایی خاصیت dispose دارن رو میتونید از using استفاده کنید.
موفق باشید:11:.
سلام.
بازم نشد.
اگه میشه ایمیلتون رو بدین تا پروژه رو ارسال کنم بهتون و اگه مشکلی نیست برام مشکلش رو حل کنید.
ممنون.:31::10:
سلام.
نیازی به این کار نیست....
امکان داره کسی پیدا بشه که همین مشکل شما رو داشته باشه میاد اینجا و مشکلش حل میشه.
این کلاس رو امتحان کنید:
من معمولاً با این کلاس کار میکنم.کد:using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Data.SqlClient;
namespace Accounting.Classes
{
class Sql_Class
{
private static string _connectionString = @"Data Source=.\SQLEXPRESS;AttachDbFilename=C:\DataBase\AccountingDB.mdf;Integrated Security=True;Connect Timeout=30;User Instance=True";
public static string ConnectionString
{
get { return _connectionString; }
set { _connectionString = value; }
}
private static bool IsExistItem(string cmd)
{
using (SqlConnection connection = new SqlConnection(_connectionString))
{
connection.Open();
SqlDataAdapter dt = new SqlDataAdapter(cmd, connection);
System.Data.DataSet dataset = new System.Data.DataSet();
dt.Fill(dataset);
if (dataset.Tables[0].Rows.Count > 0)
return true;
connection.Close();
}
return false;
}
public static void Insert(string cmd)
{
using (SqlConnection connection = new SqlConnection(_connectionString))
{
using (SqlCommand command = new SqlCommand(cmd, connection))
{
connection.Open();
command.ExecuteNonQuery();
connection.Close();
}
}
}
public static int Insert(string cmd, bool ret, string selectCommand, string existItem)
{
int _ret = -1;
if (existItem != "" && IsExistItem(existItem))
{
if (System.Windows.Forms.MessageBox.Show("اطلاعات وارد شده تکراری می باشد.ثبت شود؟", "ثبت اطلاعات", System.Windows.Forms.MessageBoxButtons.YesNo) == System.Windows.Forms.DialogResult.No)
{
return _ret;
}
}
using (SqlConnection connection = new SqlConnection(_connectionString))
{
using (SqlCommand command = new SqlCommand(cmd, connection))
{
connection.Open();
command.ExecuteNonQuery();
if (ret)
{
SqlDataAdapter dt = new SqlDataAdapter(selectCommand, connection);
System.Data.DataSet dataset = new System.Data.DataSet();
dt.Fill(dataset);
_ret = (int)dataset.Tables[0].Rows[dataset.Tables[0].Rows.Count - 1][0];
}
connection.Close();
}
}
return _ret;
}
public static System.Data.DataSet GetList(string cmd)
{
System.Data.DataSet dataset = new System.Data.DataSet();
using (SqlConnection connection = new SqlConnection(_connectionString))
{
connection.Open();
SqlDataAdapter dt = new SqlDataAdapter(cmd, connection);
dt.Fill(dataset);
connection.Close();
}
return dataset;
}
public static void DeleteUpdateCommand(string cmd)
{
using (SqlConnection connection = new SqlConnection(_connectionString))
{
using (SqlCommand command = new SqlCommand(cmd, connection))
{
connection.Open();
command.ExecuteNonQuery();
connection.Close();
}
}
}
}
}
مشکلی داشتید در خدمتم:40:.
موفق باشید:11:.
سلام.
میشه در مورد استفاده اش یه توضیحی بدید؟
آدرس اصلی دیتابیس که خودتون میدونید برای ارتباط با دیتا بیسه.کد:ConnectionString
یک تابع برای دستورات ویرایش و حذف و اضافه کردن داده...که کارتونو انجام میده.کد:DeleteUpdateCommand
مثلاً:
کد:Accounting.Classes.Sql_Class.DeleteUpdateCommand("Delete * from tbl_1 where id = 14");
میتونید باهاش عملیات جستجو رو انجام بدین و در دیتا گراید بریزید یا ازش استفاده کنید.کد:GetList
مقدار برگشتی از نوع System.Data.DataSet مثلاً:
بقیشم که فکر نکنم به دردتون بخوره از همینا میتونید کلی استفاده کنید(البته وقت ندارم که توضیح بدم ببخشید.:40:).کد:System.Data.DataSet dt = Accounting.Classes.Sql_Class.GetList("select * from tbl_1 where [name] = 'ali'");
dt.Tables[0]
موفق باشید:11:.
سلام.
دستتون درد نکنه.
خیلی توابع خوبی هستن.
تو پروژه ام ازشون استفاده کردم و جواب داد.
ممنون.:10::10::10::11::40: