عنوان
|
نويسنده
|
مشاهده
|
تعداد
آراء |
امتياز
|
ايجاد فايل XML با استفاده از يک بانک اطلاعاتی |
مديريت وب |
10089 |
14 |
4.1 |
با توجه به جایگاه داده در عصر حاضر و لزوم نگاه جامع به این مقوله مهم ، بر آن شدیم تا محوریت فعالیت های خود را بر روی این موضوع متمرکز نمائیم . از این رو گروه فابک با شعار فناوری اطلاعات برای کسب وکار شکل گرفت و خدمات خود را از طریق سایت www.fabak.ir به مخاطبان محترم عرضه می نماید
 |
ايجاد فايل XML با استفاده از بانک اطلاعاتی
ايجاد فايل XML با
استفاده از يک بانک اطلاعاتی
از بانک های اطلاعاتی به منظور ذخيره و مديريت داده
ها استفاده می گردد . در صورتی که قصد ارسال داده های ذخيره شده در يک بانک
اطلاعاتی را برای يک سرويس گيرنده داشته باشيم ، XML
گزينه ای مطلوب در اين رابطه است . با استفاده از XML
داده ها در ساختاری ذخيره و سازماندهی می شوند که سرويس گيرندگان با هر نوع پلت فرم
قادر به استفاده از آنان با توجه به اهداف عملياتی خود می باشند. در حقيقت ،
XML مکانيزم استانداردی به منظور مبادله داده بين دو
نقطه مبداء و مقصد را فراهم می نمايد . بدين ترتيب بخش های متفاوت يک نرم افزار و
يا نرم افزارهای مختلف ، قادر به مبادله داده بين خود خواهند بود .
XML در دات نت دارای نقشی محوری و اساسی بوده و نظير
چسبی است که تمام بخش های فريمورک دات نت را به يکديگر متصل و مرتبط می نمايد
.مثلا" ADO.NET اساس کار خود را بر روی
DataSet استوار نموده که بطور کامل از
XML حمايت می نمايد . کلاس DataSet
دارای مجموعه وسيعی از متدهای لازم به منظور پردازش اسناد XML
است . برخی از متداولترين آنان عبارتند از :
-
ReadXml
-
WriteXml
-
GetXml
-
GetXmlSchema
-
InferXmlSchema
-
ReadXmlSchema
-
WriteXmlSchema.
در اين مقاله با نحوه ايجاد يک سند
XML که محتويات آن متاثر از اجرای يک
query در ارتباط با يک بانک اطلاعاتی می باشد ،
آشنا خواهيم شد. بدين منظور مراحل زير را دنبال خواهيم کرد :
-
مرحله اول :
ايجاد بانک اطلاعاتی ( از يک بانک اطلاعاتی
Access استفاده خواهيم کرد )
-
مرحله دوم :
مشخص نمودن يک ساختار برای فايل XML
-
مرحله سوم :
ايجاد يک فرم وب که ليست محصولات را در يک DataGrid
نمايش داده و کاربر بتواند با استفاده از Button
تعبيه شده بر روی آن اقدام به ايجاد فايل XML و
Schema مربوط به آن نمايد .
-
مرحله چهارم :
ايجاد يک DataSet و پر نمودن داده در آن با استفاده از
يک SQL query ( اين کار را در روتين
Page_Load انجام خواهيم داد )
-
مرحله پنجم :
نوشتن روتين مربوط به ايجاد فايل XML
مرحله اول : ايجاد بانک
اطلاعاتی
بانک اطلاعاتی Products و جدول
OurProducts

مرحله دوم : مشخص نمودن يک
ساختار برای فايل XML
فايل XML که قصد ايجاد آن را داريم دارای
ساختار زير است :
فا يل XML
نمونه |
<XMLProducts>
<ProductSpec>
<ProductID>
</ProductID>
<ProductName>
</ProductName>
<UnitPrice>
</UnitPrice>
</ProductSpec>
...
</XMLProducts>
|
مرحله سوم : ايجاد يک فرم وب
در فرم وب از دو کنترل DataGrid و
Button استفاده شده است
. از کنترل DataGrid به منظور نمايش محتويات
Dataset و از کنترل Button به
منظور ايجاد فايل XML ، استفاده خواهيم کرد .
فرم وب
|
<%@ Page Language ="VB" %>
<%@ Import Namespace="System.Xml" %>
<%@ Import Namespace="System.Data" %>
<%@ Import Namespace="System.IO" %>
<%@ Import
Namespace="System.Data.OleDb" %>
<html><head></head><body>
<form runat="server">
<b>ليست محصولات </b> <br/><br/>
<asp:DataGrid id="ProductGrid" runat="server"
AutoGenerateColumns="False"
Font-Names="Tahoma"
Font-Size="8pt"
CellPadding="1"
GridLines="Horizontal"
...
</asp:DataGrid>
<br/><br/>
<asp:Button id="cmdMakeXML" Text="ايجاد فايل
XML " runat="server" onclick="MakeXML"/>
</body></form></html>
|
مرحله چهارم : ايجاد يک
DataSet و پر نمودن داده در آن
اين کار از طريق روتين Page_laod
انجام می شود . در اين روتين پس از ارتباط با بانک اطلاعاتی
Products و اجرای يک query در ارتباط با
جدول OurProducts ، داده مورد نظر در
DataSet قرار گرفته و در نهايت با نسبت دهی آن به
خصلت DataSource کنترل DataGrid
، داده ها در کنترل DataGrid نمايش داده می شوند .
روتين
Page_Load |
Sub Page_Load(s As Object, e As
EventArgs)
If Not Page.IsPostBack Then
Dim myDataSet As New DataSet("myXMLProduct")
Dim myConn As New OleDbConnection(
"Provider=Microsoft.Jet.OLEDB.4.0;" & _
"Data Source=C:\Products.mdb")
Dim mydataAdapter As New OleDbDataAdapter _
("SELECT
ProductID,ProductName,UnitPrice FROM OurProducts" ,myConn)
mydataAdapter.Fill(myDataSet,"ProductSpec")
ProductGrid.DataSource=myDataSet.Tables(0)
ProductGrid.DataBind
Session("Ds")=myDataSet
End If
End Sub
|
مرحله پنجم : روتين
MakeXml
در اين مرحله فايل های
myXMLData.xml
و
myXMLData.xsd ايجاد خواهند شد . بدين منظور يک
DataSet ايجاد و داده آن از طريق متغير
Session ايجاد شده در روتين
Page_Load پر می گردد .
روتين
MakeXml |
Sub MakeXML(s As Object, e As
EventArgs)
Dim myFs1 As New FileStream (Server.MapPath _
("myXMLData.xml") ,FileMode.Create
,FileShare.ReadWrite)
Dim myFs2 As New FileStream(Server.MapPath _
("myXMLData.xsd"),FileMode.Create,FileShare.ReadWrite)
Dim myDataSet As New DataSet
myDataSet=Session("Ds")
myDataSet.WriteXml(myFs1)
myFs1.Close()
myDataSet.WriteXmlSchema(myFs2)
myFs2.Close()
End Sub
|
پس از ذخيره تمامی کدهای اشاره شده در فايل
MakeXmlFromDataBase.aspx و مشاهده آن در مرورگر ، خروجی زير را
خواهيم داشت :

پس از فعال نمودن دکمه "ايجاد فايل
XML " ، فايل های myXMLData.xml و
myXMLData.xsd ايجاد می گردند .
فايل
myXMLData.xml

myXMLData.xsd
