نمایش نتایج 1 تا 7 از 7

نام تاپیک: تعریف کلاسی برای برقراری ارتباط با بانک اطلاعاتی

  1. #1
    کاربر دائمی
    تاریخ عضویت
    آذر 1389
    محل زندگی
    تهران
    پست
    857

    تعریف کلاسی برای برقراری ارتباط با بانک اطلاعاتی

    سلام
    دوستان من میخام یه کلاس در پروژه تعریف کنم که داخل اون تنظیمات برقراری ارتباط با بانک در اون انجام میشه
    ساخت connection و ست کردن connection string داخل اون متد هایی تعریف کنم واسه select , ...
    آیا اصلا این کار منطقیه و دوم اینکه چرا کد زیر جواب نمیده ؟
    class Db
    {
    SqlConnection con=new SqlConnection();
    con.ConnectionString = "Data Source=.;Initial Catalog=InjectionTest;Integrated Security=True;";
    con.Open();
    SqlCommand cmd=new SqlCommand();
    SqlDataAdapter da=new SqlDataAdapter();
    DataTable dt=new DataTable();


    string sr="server=. ;database=user.mdf ; trusted_conection=yes";






  2. #2

    نقل قول: تعریف کلاسی برای برقراری ارتباط با بانک اطلاعاتی

    سلام
    اگر کد رو توی تگ کد بذارید دوستان بیشتر مشتاق پاسخ گویی خواهند بود
    class Db
    {
    SqlConnection con=new SqlConnection();
    con.ConnectionString = "Data Source=.;Initial Catalog=InjectionTest;Integrated Security=True;";
    con.Open();
    SqlCommand cmd=new SqlCommand();
    SqlDataAdapter da=new SqlDataAdapter();
    DataTable dt=new DataTable();


    string sr="server=. ;database=user.mdf ; trusted_conection=yes";


    در مورد اینکه منطقی هست یانه:
    به نظر من بستگی داره که از این کلاس چه انتظاراتی داشته باشی؛
    مثلا اگر قراره یک سری کارهای ساده رو برای یه پروژه ی خاص انجام بده، منطقی هست
    ولی اگر کلاسی بخوای که کارهای با جزئیات بیشتر و حالات مختلف رو شامل بشه که برای هر پروژه ای قابل استفاده باشه کار منطقی نیست، چون در اون صورت فکر کنم راحتر باشه مستقیم با کوئیری های sql کار کنی تا اینکه به یه کلاس دیگه بفهمونی دقیقا چی می خوای

  3. #3
    کاربر دائمی
    تاریخ عضویت
    آذر 1389
    محل زندگی
    تهران
    پست
    857

    نقل قول: تعریف کلاسی برای برقراری ارتباط با بانک اطلاعاتی

    با سلام

    از پاسخت ممنون دوست عزیز
    من نیاز دارم که یه سری کارهای ساده را با اون انجام بدم که دیگه نیازی نباشه برای ارتباط با بانک همیشه دیتابیس را open کنم connection ست کنم و و کارهای روتینی که شاید انجام اون به صورت پی در پی هم خوانایی برنامه را پایین میبره و هم حوصله برنامه نویس را
    ثلا برای متد های select , insert و ... یه سری کارها انجام بدم که نام جدول و فیلد ها را بگیره و insert کنه و یا نام جدول را بگیره و شرط کوئری را و سپس مقدار برگردونه
    کسی نمیدونه چرا این کد بالا ارور میده؟
    چرا داخل class نمیتونیم data table بسازیم؟
    مگه چه مشکلی پیش میاید؟

    مرسی

  4. #4

    نقل قول: تعریف کلاسی برای برقراری ارتباط با بانک اطلاعاتی

    چه خطایی میده؟ یکم بیشتر توضیح بده

  5. #5
    کاربر دائمی آواتار jeson_park
    تاریخ عضویت
    دی 1387
    محل زندگی
    گچساران
    سن
    34
    پست
    595

    نقل قول: تعریف کلاسی برای برقراری ارتباط با بانک اطلاعاتی

    با سلام
    داریدTBLUser با فرض اینکه شما یه جدول با نام
    public class DataAccess
    {
    static string strExceptionMsg = null;

    SqlConnection con;
    SqlCommand cmd;
    SqlDataAdapter da;


    public DataAccess()
    {
    con = new SqlConnection();
    cmd = new SqlCommand();
    da = new SqlDataAdapter();
    cmd.Connection = con;
    da.SelectCommand = cmd;
    }

    public void Connect()
    {

    con.ConnectionString = "Data Source=.;Initial Catalog=InjectionTest;Integrated Security=True;";
    con.Open();

    }
    public void Disconnect()
    {
    con.Close();
    }
    public void DoCommand(string sqlCommand)
    {
    cmd.CommandText = sqlCommand;
    cmd.ExecuteNonQuery();
    }
    public void InserToDB(string firtname, string lastName, int age)
    {
    string command = "insert into TBLUser(FirstName,LastName,Age) values(@FName,@LName,@Age)";
    cmd.Parameters.AddWithValue("@FName", firtname);
    cmd.Parameters.AddWithValue("@LName", lastName);
    cmd.Parameters.AddWithValue("@Age", age);

    DoCommand(command);
    con.Close();
    }

    }

    بر حسب نیاز بقیه قسمت ها رو هم تکمیل کنید
    پیوست: شاید مشکل از connection string باشه
    من با connection string شما مشکل دارم
    خودم همیشه از این connectionstring استفاده می کنم
     string ConnectionString = @"Data Source=.\SQLEXPRESS;AttachDbFilename=|DataDirector  y|\Database.mdf;Integrated Security=True;User Instance=True";
    موفق باشید
    آخرین ویرایش به وسیله jeson_park : شنبه 13 اسفند 1390 در 14:06 عصر

  6. #6
    کاربر دائمی
    تاریخ عضویت
    آذر 1389
    محل زندگی
    تهران
    پست
    857

    نقل قول: تعریف کلاسی برای برقراری ارتباط با بانک اطلاعاتی

    سلام
    دوست عزیز از این که وقت گذاشتید و پاسخ دادید ممنونم
    اما مشکل از connection string نیست چون من وقتی به صورت عادی و بدون تعریف کلاس از این کد استفاده میکنم هیچ مشکلی پیش نمیاد و همه چیز ردیف ردیفه
    اما نمیدونم چرا داخل کلاس نمیتونم data table درست کنم؟
    چرا نمیشه داخل کلاس data table درست کرد؟
    لازم به ذکره که system.data و system.data.sqlclient را هم using کردم

    ممنون میشم راهنمایی بفرمایید
    مرسی

  7. #7
    کاربر دائمی آواتار jeson_park
    تاریخ عضویت
    دی 1387
    محل زندگی
    گچساران
    سن
    34
    پست
    595

    نقل قول: تعریف کلاسی برای برقراری ارتباط با بانک اطلاعاتی

    خب متن خطا رو بزارید

    کلاس تون هم از بیخ مشکل داره من توی VS واردش کردم intellSence هنگ کرده!
    به کلاس من نگاه کنید
    سازنده داره
    تابع داره
    شما همین کد ها رو برای یه تابع عضو کلاس نویسید مثلا کلاستون رو به این صورت در بیارید
    error CS1519: Invalid token '=' in class, struct, or interface member declaration
    ببنید هر کلاسی از یه سری توابع عضو تشکیل شده که این توابع عضو کار کلاس رو انجام میدن
    شما می خوای یه دستور انتصاب توی کلاس انجام بدی نمیشه
    این رو باید با یه تابع عضور انجام بدی


    public class DB
    {
    SqlConnection con = new SqlConnection();
    SqlCommand cmd = new SqlCommand();
    SqlDataAdapter da = new SqlDataAdapter();
    DataTable dt = new DataTable();



    public void connect()
    {
    con.ConnectionString = "Data Source=.;Initial Catalog=InjectionTest;Integrated Security=True;";
    con.Open();
    }
    string sr = "server=. ;database=user.mdf ; trusted_conection=yes";
    }

قوانین ایجاد تاپیک در تالار

  • شما نمی توانید تاپیک جدید ایجاد کنید
  • شما نمی توانید به تاپیک ها پاسخ دهید
  • شما نمی توانید ضمیمه ارسال کنید
  • شما نمی توانید پاسخ هایتان را ویرایش کنید
  •