PDA

View Full Version : درخواست راهنمایی برای کار با XML ؟



mrhamidifar
یک شنبه 13 مرداد 1387, 08:29 صبح
سلام ،
من میخوام اطلاعات یک فایل xml رو تویه دیتابیس بریزم به عنوان مثال

<ROOT>
- (file:///C:/Customers.xml#) <Customers>
<CustomerId>1111</CustomerId>

<CompanyName>Sean Chai</CompanyName>

<City>NY</City>

</Customers>


- (file:///C:/Customers.xml#) <Customers>
<CustomerId>1112</CustomerId>

<CompanyName>Tom Johnston</CompanyName>

<City>LA</City>

</Customers>


- (file:///C:/Customers.xml#) <Customers>
<CustomerId>1113</CustomerId>

<CompanyName>Institute of Art</CompanyName>

</Customers>


</ROOT>


رویه تیبل CustomerId ،CompanyName وCity رو دارم کاری که میخوام بکنم اینه که اطلاعات این فایل xml رو مثلا customerID رو (1111) روی دیتابیس در ستون CustomerID بریزم
لطفا راهنمایی کنید

سار
یک شنبه 13 مرداد 1387, 08:45 صبح
سری به این لینک بزنید و DLL رو دانلود و به همراه راهنما از اون استفاده کنید خواهید دید که کار بسیار آسان خواهد شد.

http://www.example-code.com/csharp/xml.asp

این برای کار با XMLها و اما برای ذخیره XML در جدول میتودی با همین ابزار فایل رو پارس کنید و تو جدول قرار بدید و یا اصلن فیلدی از نوع XML داشته باشید.

jaza_sa
یک شنبه 13 مرداد 1387, 21:11 عصر
برای خواندن از یک فایل XML میتونید از این کد استفاده کنید
که در این کد dgv همون DataGridView ما هست

DataSet ds = new DataSet();
ds.ReadXml("Xml_File_Name.xml");

dgv.DataSource = ds.Tables[0];همچنین برای نوشتن در یک فایل XML کافیه به جای ReadXml از WriteXml استفاده کنید.

gdevnb
دوشنبه 14 مرداد 1387, 00:56 صبح
سلام
برای اطلاعات بیشتر این کتاب رو بخون کتاب خیلی خوبیه.
Apress Pro .NET 2.0 XML
در ضمن کمپوننت Chikat که دستمون در بالا اشاره کردن هم ورژن مجانی و هم پولی شما میتونی مجانیش رو دانلود کنی .

mrhamidifar
دوشنبه 14 مرداد 1387, 07:53 صبح
برای خواندن از یک فایل XML میتونید از این کد استفاده کنید

DataSet ds = new DataSet();
ds.ReadXml("Xml_File_Name.xml");

dgv.DataSource = ds.Tables[0];همچنین برای نوشتن در یک فایل XML کافیه به جای ReadXml از WriteXml استفاده کنید.

میشه توضیح بدید dgv چیه ؟

Masiha1986
دوشنبه 14 مرداد 1387, 10:19 صبح
با سلام
برای Insert کردن XML درون یک Table درون SQL Server می تونید از این روش استفاده کنید (می خواهیم XML@ را درون جدول Person درج کنیم):



DECLARE @Xml xml
SET @Xml = '<PhoneBook>
<Person>
<PersonID>1</PersonID>
<PersonName>Mohammad</PersonName>
<PersonFamily>Chavoshi</PersonFamily>
<Adderss>Tehran</Adderss>
</Person>
<Person>
<PersonID>2</PersonID>
<PersonName>Ali</PersonName>
<PersonFamily>Rezaei</PersonFamily>
<Adderss>Shiraz</Adderss>
</Person>
<Person>
<PersonID>3</PersonID>
<PersonName>Mahdi</PersonName>
<PersonFamily>Mousavi</PersonFamily>
<Adderss>Qom</Adderss>
</Person>
</PhoneBook>'


-----------XML2TABLE---------------

INSERT INTO Person
SELECT Person.value('PersonID[1]','int'),
Person.value('PersonName[1]','nvarchar(255)'),
Person.value('PersonFamily[1]','nvarchar(255)'),
Person.value('Adderss[1]','nvarchar(max)')
FROM @Xml.nodes('/PhoneBook/Person') PhoneBook(Person)
لازم به ذکره که در صورتی که می خواهید از برخی از فیلد های درون XML استفاده کنید، اول باید اون رو توی یک Temp Table ذخیره کنید و سپس با یک Cursor توی اون بگردید.


میشه توضیح بدید dgv چیه ؟در ضمن dgv نامیه که این دوستمون برای DataGridView شون در نظر گرفتن.