| |
| |
|
تبلیغات | |
جستجو، دایرکتوری وب فارسی، 118، لغت نامه، تقویم، اخبار و ... در جستجوگر ریسمون | |
| | |
توسط :
علي حاج شفيعيها
(1386/11/1) | بازدید :
1768
روش تبديل اطلاعات از بانک اطلاعاتی به XML و نمايش اطلاعات آن
در اين مقاله سعی دارم که نحوه نوشتن در
XML و خواندن از آن را شرح دهم. برای مثال ما يك وبلاگ داريم که اطلاعات را از بانک
اطلاعاتی Access می خواند. ولی من برای اينکه همين اطلاعات را در يک فايل XML هم
داشته باشم اين کد را به Load صفحه اضافه کردم:
Dim DS As New DataSet()
Dim strConnect As New
OleDbConnection(ConfigurationSettings.AppSettings("datasource"))
Dim objSQLAdapter As New OleDbDataAdapter("SELECT * from blog order
by id DESC", strConnect)
objSQLAdapter.Fill(DS, "blog")
Dim doc As XmlDataDocument = New XmlDataDocument(DS)
Dim writer As XmlTextWriter = New XmlTextWriter("D:\www\weblog\weblog.xml",
Nothnig)
writer.Formatting = Formatting.Indented
doc.Save(writer) |
در اين کد با استفاده از شئ DataSet، اطلاعات را از جدول
مورد نظر بانک اطلاعاتی خود می خوانيم و آن را در يک فايل XML به نام weblog.xml
ذخيره می کنيم. اگر اين کد را اجرا کنيم يک فايل XML ايجاد می شود و هر وقت صفحه
اول اجرا شود فايل XML رونويسی می شود.
اما حالا يک فايل XML داريم و می خواهيم از آن استفاده کنيم. مخصوصا استفاده از XML
برای سايت های خبری يا وبلاگ ها بسيار مناسب است. مثلا فرض کنيد که می خواهيم
خبرهای موجود در يک سايت ديگر که به شکل XML ارائه می شوند (مانند RSS) را در سايت
خودمان نمايش دهيم. برای اين کار ابتدا يک فايل ASPX ايجاد کنيد و اين کد را در
قسمت Design يا همان HTML آن بنويسيد.
|
<asp:DataList
id="theDataList" runat="server" Width="100%" dir=rtl CssClass=text>
<ItemTemplate>
تاريخ :<%# DataBinder.Eval(Container.DataItem, "news_date")
%><br>
عنوان : <%# DataBinder.Eval(Container.DataItem, news_title")
%><br><br>
<%# DataBinder.Eval(Container.DataItem, "news_body") %><br>
<hr>
</ItemTemplate>
</asp:DataList> |
ما در اينجا يک کنترل DataList ايجاد
کرديم و مقادير مورد نظر را در آن نوشتيم. حالا کدی که در Load اين صفحه بايد
بنويسيم به اين شکل خواهد بود:
|
Dim ds As New DataSet()
ds.ReadXml("d:\www\weblog\weblog.xml", XmlReadMode.Auto)
theDataList.DataSource = ds
theDataList.DataBind() |
اگر اين صفحه را اجرا کنيد تمام فيلدهای XML در اين فايل
ASP.NET نمايش داده خواهد شد. در مثال بالا از يک فايل XML موجود بر روی ديسک
استفاده شده است حال آنکه می توانيم بجای اين آدرس محلی از يک آدرس موجود در وب که
همان آدرس سايت مورد نظر است استفاده کنيم. مثلا اگر بخواهيد اخبار سايت مورد نظر
را در سايت خود نمايش دهيد کافی است اينگونه عمل کنيد:
|
Dim ds As New DataSet()
ds.ReadXml("http://www.website.com/weblog.xml",XmlReadMode.Auto)
theDataList.DataSource = ds
theDataList.DataBind |
پی نوشت :
این مقاله توسط آقای علی حاج شفيعيها در تاریخ ۱۳۸۲/۵/۲۲ برای IranAsp.Net تهیه
شده و در آن سایت ۴۱۹۵ بار بازدید شده بود.
همه مقالات
کلیات Asp.Net
را ببینید.
| |