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

نام تاپیک: LINQ To XML با استفاده از دیتاتیبل

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

    LINQ To XML با استفاده از دیتاتیبل

    سلام دوستان
    من برای بایند کردن یک فایل XML با ساختار پایین



    <?xml version="1.0" encoding="utf-8"?>
    <Books>
    <Book>
    <id>1</id>
    <title>Introducing Microsoft LINQ</title>
    <author>Paolo Pialorsi</author>
    </Book>
    </Books>


    یک دیتاست به پرووژه ام اضافه کردم و داخل دیتاست هم یک دیتاتیبل به نام Book با سه ستون author، id ، title که نوع ستون id رو کلید و با خاصیت auto increment تنظیم کردم
    الان می خوام از وقتی از طریق دو تا تکس باکس نام کتاب و نویسنده رو بگیرم و با کلید که توسط دیتاتیبل درست شده در یک فایل XML بریزم
    اگر امکان داره یک نمونه کد معرفی کنید
    ممنون

  2. #2

    نقل قول: LINQ To XML با استفاده از دیتاتیبل

    نیاز به دیتاست نیست. از LinqToXML استفاده کن.
    فرض کن نام فایل books.xml و کنار خایل اجرایی برنامه باشه.
    به اینصورت میتونی اطلاعات را بیرون بکشی و نمایش بدی:

    string xmlFilePath = System.IO.Path.Combine(Application.StartupPath , "books.xml" );
    XElement element = null;
    try
    {
    element = XElement.Load(Path.Combine(xmlFilePath));
    }
    catch (Exception ex)
    {
    MessageBox.Show(ex.Message);
    return;
    }

    var q = from item in element.Elements("Book")
    select new
    {
    ID = item.Element("id").Value,
    title = item.Element("title").Value,
    author = item.Element("author").Value
    };
    dataGridView1.DataSource = q.ToList();

    به صورت زیر هم میتونی کتاب جدید اضافه کنی:

    string xmlFilePath = System.IO.Path.Combine(Application.StartupPath, "books.xml");
    XElement element = null;
    try
    {
    element = XElement.Load(Path.Combine(xmlFilePath));
    }
    catch (Exception ex)
    {
    MessageBox.Show(ex.Message);
    return;
    }

    int newId = 1;
    if (element.Elements("Book").Count() > 0)
    {
    newId = element.Elements("Book").Max(item => Convert.ToInt32(item.Element("id").Value))+1;
    }

    element.Add(new XElement("Book",
    new XElement("id", newId),
    new XElement("title", textBox1.Text),
    new XElement("author", textBox2.Text)
    ));

    element.Save(xmlFilePath);

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

    نقل قول: LINQ To XML با استفاده از دیتاتیبل

    ممنون خیلی عالی بود
    سرعت نمایش اطلاعات با این روش ار دستاتیبل خیلی بیشتر هست
    ببخشید اگر به خوام جستجو انجام بدم به همین روش
    یعنی توسط فیلد id جستجو کنم
    کدش رو چطور باید تغییر بدم

  4. #4

    نقل قول: LINQ To XML با استفاده از دیتاتیبل


    string xmlFilePath = System.IO.Path.Combine(Application.StartupPath, "books.xml");
    XElement element = null;
    try
    {
    element = XElement.Load(Path.Combine(xmlFilePath));
    }
    catch (Exception ex)
    {
    MessageBox.Show(ex.Message);
    return;
    }

    var book = from item in element.Elements("Book")
    where item.Element("id").Value == textBox1.Text
    select new
    {
    ID = item.Element("id").Value,
    title = item.Element("title").Value,
    author = item.Element("author").Value
    };

    dataGridView1.DataSource = book.ToList();

  5. #5
    کاربر دائمی آواتار 13601360
    تاریخ عضویت
    آذر 1386
    محل زندگی
    کنار دریای خزر
    پست
    422

    نقل قول: LINQ To XML با استفاده از دیتاتیبل

    ممنون از لطفتون
    میشه خواهش کنم نظرتون رو درباره سوال این تاپیک بگیرد

تاپیک های مشابه

  1. حرفه ای: منوی زیبای دینامیک و open source با استفاده از linq و xml (حتما دانلودش کنید)
    نوشته شده توسط ehsan2007 در بخش ASP.NET Web Forms
    پاسخ: 6
    آخرین پست: پنج شنبه 28 مهر 1390, 09:42 صبح
  2. آموزش: تولید متا تگ به صورت داینامیک با استفاده از linq to xml
    نوشته شده توسط omid_kimia در بخش ASP.NET Web Forms
    پاسخ: 0
    آخرین پست: شنبه 28 اسفند 1389, 11:23 صبح
  3. جستجو در xml بدون استفاده از linq
    نوشته شده توسط ahmad1358 در بخش ASP.NET Web Forms
    پاسخ: 0
    آخرین پست: پنج شنبه 22 مهر 1389, 09:42 صبح
  4. مشکل جستجو در Xml با استفاده از ClientDataset
    نوشته شده توسط amir_alaki در بخش بانک های اطلاعاتی در Delphi
    پاسخ: 0
    آخرین پست: دوشنبه 13 اسفند 1386, 09:47 صبح
  5. ساخت Xml با استفاده از بستر Master & Detail
    نوشته شده توسط Touska در بخش بانک های اطلاعاتی در Delphi
    پاسخ: 1
    آخرین پست: شنبه 31 شهریور 1386, 16:55 عصر

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

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