در بخش اول این مقاله با فایل های RSS و موارد استفاده از آنان آشنا شدیم . در بخش دوم به بررسی نحوه ایجاد فایل های RSS با استفاده از یک بانک اطلاعاتی و بهنگام سازی اتوماتیک آنان خواهیم پرداخت .
اطلاعات موجود در فایل های RSS را می توان به صورت دستی و با استفاده از یک ادیتور متنی و یا یک ادیتور XML ایجاد نمود. در صورتی که فرکانس تغییر اطلاعات زیاد باشد، روش فوق گزینه ای مناسب نخواهد بود. در چنین مواردی می توان اطلاعات مورد نظر را از بانک اطلاعاتی مربوطه ( اخبار ، مقالات ) بازیابی و آنان را در فایل RSS درج نمود . بدین ترتیب در صورت بروز هر گونه تغییر در بانک اطلاعاتی ، فایل RSS نیز به صورت اتوماتیک بهنگام می گردد.
مثال : ایجاد RSS با استفاده از یک بانک اطلاعاتی
در این مثال قصد د اریم اطلاعات را از یک بانک اطلاعاتی اکسس خوانده و به صورت یک فایل XML با فرمت RSS ذخیره نمائیم .
فرضیات :
اندازه | نوع | نام فیلد |
Date/Time | PubDate | |
100 | Text | Title |
100 | Text | Link |
Memo | Description |
ایجاد یک فایل RSS
مرحله اول : تایپ کد زیر با استفاده از یک ویرایشگر
اسکریپت های زیر یک فایل RSS 2.0 را با توجه به اطلاعات موجود در بانک اطلاعاتی RSS.mdb ایجاد و آن را با نام RSS.XML در فهرست ریشه وب مورد نظر ذخیره می نماید.
|
مرحله دوم : پس از ذخیره کد فوق در فایلی با نام MakeRss.aspx و اجرای آن ، فایل RSS.xml ایجاد می گردد .
توضیحات :
به منظور بازیابی رکوردهای موجود در بانک اطلاعاتی و ایجاد یک فایل RSS از ساختار تکرار While استفاده شده است .
به منظور نوشتن رکوردهای بازیابی شده در فایل RSS از کلاس StreamWriter دات نت استفاده شده است . بنابراین لازم است که از System.IO در ابتدای برنامه استفاده شود . ( " Import Namespace="System.IO
namespace فوق کلاس های StreamReader و StreamWriter را به منظور خواندن و نوشتن در فایل های text ارائه می نماید.
کلاس StreamReader دارای متدهای متفاوتی به منظور خواندن فایل های text است :
Dim FileReader As StreamReader |
FileReader متغیری است که به عنوان یک شی StreamReader تعریف شده است . متد openText فایل موجود در مسیر مشخص شده را به شی FileReader نسبت می دهد . متد ReadLine یک خط از فایل text را بدون در نظر گرفتن کاراکتر Line-break ، می خواند. با استفاده از متد ReadToEnd تمامی محتویات فایل با لحاظ نمودن کاراکترهای line-break ، خوانده می شوند. از متد close پس از اتمام کار و به منظور بستن فایل استفاده می گردد .
کلاس StreamWriter دارای متدهای متفاوتی به منظور نوشتن در فایل های text است :
Dim FileWriter As StreamWriter |
FileWriter متغیری است که به عنوان یک شی StreamWriter تعریف شده است . متد CreateText فایل text موجود در آدرس Path را به شی FileWriter نسبت می دهد . متد فوق در صورتی که فایل موجود نباشد آن را ایجاد و در صورت موجود بودن فایل بر روی آن بازنویسی می نماید .متد AppendText خطوطی را به یک فایل موجود اضافه می نماید . متد WriteLine یک رشته متن به همراه یک کاراکتر Line-break را به فایل text اضافه می نماید. متد Write یک رشته متن را بدون لحاظ نمودن یک کاراکتر Line-break به فایل text اضافه می نماید . از متد close پس از اتمام کار و به منظور بستن فایل استفاده می گردد .
در ابتدا، گره ریشه
برای هررکورد بازیابی شده از بانک اطلاعاتی یک گره
FileWriter.WriteLine("http://www.srco.ir/")
FileWriter.WriteLine("
While DBReader.Read()
FileWriter.WriteLine("
FileWriter.WriteLine("
FileWriter.WriteLine("")
FileWriter.WriteLine("" & DBReader("Link") & "")
FileWriter.WriteLine("
FileWriter.WriteLine("
End While
FileWriter.WriteLine("")
FileWriter.WriteLine("")
FileWriter.Close()
DBReader.Close()
DBConnection.Close()
Response.Redirect("http://www.srco.ir/RSS.xml")
End Sub
تهیه شده در شرکت سخا روش - 1382