ورود

نسخه کامل مشاهده نسخه کامل : سوال : عملیات بر روی فایل های XML در #C



shaer_bisvad
25-03-2013, 11:05
اگر برای کسی از دوستان مقدور هست عملیات ایجاد ، درج ، ویرایش و حذف یک المنت از xmL رو توسط یک روش با استفاده از c#.NET برام توضیح بده ؛ من
این لینک رو پیدا کردم اما کدهاش کار نکرد ؛ دقیقا اموزشی مشابه این میخوام
C# : All operations on XML file ([ برای مشاهده لینک ، لطفا با نام کاربری خود وارد شوید یا ثبت نام کنید ])

و دو سوال دیگه

اگه l inqیاد بگیرم دیگه لازم نیست برای کار با xml ها از DOM استفاده کنم و همون LINQ تمام کارا رو انجام می ده ؟
ایا همه فایل های XML ساختار درختی دارند و میشه اونا رو در یک کنترل Tree view نشون دارد یا اینکه برای مشاهده یک xml بصورت درختی موقع ایجاد xml حتما باید از دستور و روش خاصی ایجاد کرد ؟


باشد که رستگار شویم ..

_H2_
29-03-2013, 11:58
سلام
برای کار با فایلهای XML بطور معمول در دات نت دو کلاس اصلی وجود دارد.
اول کلاس قدیمی System.Xml.Serialization.XmlSerializer ([ برای مشاهده لینک ، لطفا با نام کاربری خود وارد شوید یا ثبت نام کنید ]) است.
این کلاس میتواند یک Type مشخص را در از فایل های xml خوانده یا تبدیل کند.
برای کارهای ساده احت تر جواب میدهد.

دوم کلاس جدیدتر System.Xml.Linq.XDocument ([ برای مشاهده لینک ، لطفا با نام کاربری خود وارد شوید یا ثبت نام کنید ]) است که قابلیت های پیچیده تری دارد و امکان مانور بیشتری برای کارهای غیر معمول میدهد.

متاسفانه در حال حاضر وقت کافی برای شرح و بست بیشتر ندارم، ولی اگر همین نام های را در اینترنت جستجو کنید نمونه کدهای نحوه استفاده را خواهید یافت.
البته لینک های مرجع MSDN هم روی نام ها قرار دادم.
باز اگر مشکلی بود بفرمنائید، شاید در روزهای آینده فرصت بیشتری داشته باشم.


اگه l inqیاد بگیرم دیگه لازم نیست برای کار با xml ها از DOM استفاده کنم و همون LINQ تمام کارا رو انجام می ده ؟
LINQ بیشتر در حوزه استخراج اطلاعات درخواستی کارآمد است.
اگر نوع کارتان را بیشتر تشریح کنید کمک بیشتری میتوان انجام داد.
به عنوان نمونه برای اغلب افراد استفاده از کلاس XmlSerializer کافی و راحت تر خواهد بود.


ایا همه فایل های XML ساختار درختی دارند و میشه اونا رو در یک کنترل Tree view نشون دارد یا اینکه برای مشاهده یک xml بصورت درختی موقع ایجاد xml حتما باید از دستور و روش خاصی ایجاد کرد ؟
بله ولی بحرحال XML از نظر ساختاری خیلی باز است مثلاً چیزی شبیه این (که با XDocument قابل خواندن است) یکم از نظر نمایش ساختار درختی مشکل مفهومی خواهد داشت:

برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید

موفق باشید.