View Full Version : خواندن ،نوشتن و جستجو در xml
mta_va
پنج شنبه 28 شهریور 1387, 11:43 صبح
سلام
من توی برنامه یه تکست باکس دارم که می خوام وقتی کاربر هر نامی را در آن وارد می کند در یک فایل xml ذخیره کند و وقتی دوباره کاربر همان اسم را وارد می کند براش بیاره ،بدون اینکه همه ی اسم را تایپ کند در واقع باید توی فایل xml جستجو کند و بیاره و اگه نبود به فایل xml اضافه کند.
کسی میتونه راهنمایی کند.ممنون.
mohammad272005
جمعه 29 شهریور 1387, 14:15 عصر
راه 3~2تا هست. (اقلا من فقط همین قدر بلدم) که به نظر من آسونترین راه استفاده از DataTable هست. متدهای ReadFromXml و WriteToXml.
esmartiz_red
جمعه 29 شهریور 1387, 14:44 عصر
از serialization استفاده کن
http://www.dotnetjohn.com/articles.aspx?articleid=173
SMRAH1
جمعه 29 شهریور 1387, 15:01 عصر
من هم به نظرم همان DataTable و استفاده از متدهای ReadFromXml و WriteToXml بسیار کار آمد تر است.زیرا باعث می شود تا با XML به شکل یک پایگاه داده برخود کنیم.
رضا عربلو
جمعه 29 شهریور 1387, 15:04 عصر
از LINQ to XML نیز می توانید استفاده کنید.
علیرضا مداح
جمعه 29 شهریور 1387, 15:40 عصر
سلام دوست عزیز،
اگر تنها قصد ذخیره یک List از مقادیر را دارید ، به شما پیشنهاد میکنم که مقادیر وارد شده را در یک Generic List قرار داده و سپس عملیات Xml Serialization و Xml Deserialization را توسط متدهای Serialize و Deserialize مربوط به کلاس System.Xml.Serialization.XmlSerializer انجام دهید ،
اما در صورتیکه قصد ذخیره ی یک مجموعه از سطرها همراه با ساختار DataTable مربوطه را دارید ، پیشنهاد میکنم از متدهای ReadXml,WriteXml,ReadXmlSchema,WriteXmlSchema مربوط به اشیاء DataTable/DataSet بهره گیرید ،
استفاده از LINQ To SQL نیز اکیدا" توصیه میگردد ،/
mdssoft
جمعه 29 شهریور 1387, 17:04 عصر
تو این برنامه (http://mds-soft.persianblog.ir/post/42/) همه کارایی رو که میخوای با XML و LINQ انجام شده.
mta_va
دوشنبه 01 مهر 1387, 16:46 عصر
سلام و ممنون از همگی .
من تقریبا با استفاده از روشی که آقای مداح پیشنهاد داده بودند این کار را انجام دادم فقط الان یه مشکل وجود داره!
این که اطلاعات هر دفعه که توسط کاربر ثبت می شه توی فایل xml ای که ایجاد کردم ذخیره می شه یعنی مثلا یک نام ده بار ثبت می شه و این باعث می شه حجم فایل xml بی دلیل زیاد بشه .
آیا کسی متدی را پیشنهاد می ده که وقتی خواست به فایل اضافه بشه اول بگرده ببینه اگه توی فایل xml اون نام هست دیگه به فایل اضافه نکنه؟؟؟؟؟
الان در واقع فقط سوالم درباره جستجو توی یه فایل xml هست!!!!؟؟؟
منتظر راهنمایی هاتون هستم.مرسی
علیرضا مداح
دوشنبه 01 مهر 1387, 18:52 عصر
شیء List<T> دارای متدی به نام Contains میباشد که مشخص میکند آیا یک عضو در List<T> وجود دارد یا خیر ، شما میتوانید پیش از اضافه کردن عضو ، ابتدا به کمک این متد ، از عدم وجود آن در List<T> اطمینان حاصل نمایید ،
vBulletin® v4.2.5, Copyright ©2000-1404, Jelsoft Enterprises Ltd.