PDA

View Full Version : ساخت فایل xml



damanpak
سه شنبه 01 اسفند 1391, 20:31 عصر
سلام
من متاسفانه xml بلد نیستم
ولی باید از اطلاعات یکی از جدول هام یک سند xml درست کنم
دقیقا میخوام کد زیر تولید بشه با همون اطلاعاتی که هست نه کم نه زیاد
<?xml version="1.0" encoding="windows-1256"?>
<hc:MyXml xmlns:hc='www.tto.ir' xsi:schemaLocation='www.tto.ir newmos.xsd' xmlns:xsi='http://www.w3.org/2001/XMLSchema-instance'>
<TestMe>
<Name>ali</Name>
<Fname>rezaii</Fname>
</TestMe>
</hc:MyXml>
ضمنا اگه راهنمایی درباره سورس تولید سند بالا چه در محیط sql چه در محیط vb و یا C#‎‎ بدین که واقعا ممنون میشم

khokhan
سه شنبه 01 اسفند 1391, 21:34 عصر
درود برشما

جدول مبدا چه نوع دیتابیسیه ؟ بایستی مشخص کنی

damanpak
سه شنبه 01 اسفند 1391, 21:36 عصر
درود برشما

جدول مبدا چه نوع دیتابیسیه ؟ بایستی مشخص کنی
ممنون از توجهتون
دیتابیس از نوی sql

Mahmoud.Afrad
چهارشنبه 02 اسفند 1391, 07:18 صبح
یک راه ساده اینه که اطلاعات را در دیتاست لود کنید و بعد روی فایل بنویسید:

cmd = new SqlCommand("select [column1] as 'Name' , [column2] as 'Fname' from [table-name]", con);
using (SqlDataAdapter da = new SqlDataAdapter(cmd))
{
using (DataSet ds = new DataSet())
{
da.Fill(ds, "TestMe");
ds.Prefix = "hc";
ds.DataSetName = "MyXml";
string xmlFilePath = System.IO.Path.Combine(Application.StartupPath, "xmlFileName.xml");
ds.WriteXml(xmlFilePath);
}
}



راه دیگه توسط کوئری هست:

cmd = new SqlCommand("select * from [Table-Name] for xml path, Root('root')", con);
con.Open();
using (SqlDataReader dr = cmd.ExecuteReader())
{
if (dr.Read())
{
string strXmlData = dr.GetString(0);
string xmlFilePath = System.IO.Path.Combine(Application.StartupPath, "xmlFileName.xml");

System.Xml.XmlDocument doc = new System.Xml.XmlDocument();
doc.LoadXml(strXmlData);
doc.CreateXmlDeclaration("1.0", "UTF-8", null);

using (XmlWriter writer = XmlWriter.Create(xmlFilePath))
{
doc.WriteTo(writer);
}
}
}
con.Close();

damanpak
پنج شنبه 03 اسفند 1391, 00:17 صبح
سلام ممنون از پاسخ دوستان
اما کاش به خواسته ای که توی پست اول گذاشتم بیشتر دقت میکردین
دوباره تکرار میکنم
باید از اطلاعات یکی از جدول هام یک سند xml درست کنم.دقیقا میخوام کد زیر
<?xml version="1.0" encoding="windows-1256"?>
<hc:MyXml xmlns:hc='www.tto.ir' xsi:schemaLocation='www.tto.ir newmos.xsd' xmlns:xsi='http://www.w3.org/2001/XMLSchema-instance'>
<TestMe>
<Name>ali</Name>
<Fname>rezaii</Fname>
</TestMe>
</hc:MyXml>
تولید بشه با همون اطلاعاتی که هست نه کم نه زیاد
این مثالهایی که شما آوردین عمل میکنه اما متاسفانه دقیقا سند بالا رو درست نمیکنه

Mahmoud.Afrad
پنج شنبه 03 اسفند 1391, 04:18 صبح
کوئری رو به این صورت اصلاح کنید:

DECLARE @xml XML
with xmlnamespaces ('www.tto.ir' as hc)
select @xml= (
select *
from tbl
for xml PATH('TestMe') ,
ELEMENTS XSINIL ,
Root('MyXml')
)
set @xml.modify('insert ( attribute xsi:schemaLocation {"www.tto.ir newmos.xsd"}) into (/MyXml)[1]')
select @xml

damanpak
پنج شنبه 03 اسفند 1391, 11:24 صبح
بازم واقعا ممنون از پاسختون
دوست عزیز در خط اول توی اس کیو ال کوئری شما این نتیجه رو میده
<hc:MyXml xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:hc="www.tto.ir">

اما من این نتیجه رو میخوام
<hc:MyXml xmlns:hc='www.tto.ir' xsi:schemaLocation='www.tto.ir newmos.xsd' xmlns:xsi='http://www.w3.org/2001/XMLSchema-instance'>
ضمنا توی نتیجه کوئری شما این عبارت نیست
xsi:schemaLocation='www.tto.ir newmos.xsd

damanpak
پنج شنبه 03 اسفند 1391, 14:34 عصر
سلامی دوباره
آقا واقعا دمت گرم خیلی خیلی باحالی
ممنون که پیگیری میکنی
این جواب آخریه که دادی درسته فقط دو مشکل کوچیک هست
1-در عبارت زیر اول باید
xmlns:hc="www.tto.ir" xsi:schemaLocation="www.tto.ir newmos.xsd"
بیاداما نتیجه کوئری شما اول
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
میاد که اگه جاشون جابه جا بشه عالیه
دوم اینکه توی نتیجه کوئری شما باید قبل و بعد آدرس اینترنتی تک کوتیشن بیاد ====>(')
اما نتیجه کوئری شما دابل کوتیشین میاد ========>(")

damanpak
پنج شنبه 03 اسفند 1391, 20:52 عصر
چی شد؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟چرا تا دقیقه 90 اومدین و آخرین قسمت رو نگفتین
؟

damanpak
جمعه 04 اسفند 1391, 09:37 صبح
دوست عزیز اول اینکه واقعا ممنونم ازاینکه کمکم کردین و تا اینجا برنامه رو نوشتین
واسه همین از دکمه تشکر هم استفاده کردم
دوم اینکه من حتی زمان انجام پروژه های دانشجویی به پروژه به عنوان برنامه نویسی نگاه نمیکنم چراکه اینا تمریناتیه واسه بیشتر آشنا شدن با قسمتهای مختلف برنامه نویسی حالا نمیدونم شما چطور اسمشو گذاشتین برنامه نوشتن
سوم اینکه توب تاپیک اول هم گفتم با xml آشنایی ندارم وگرنه خودم همه چیشو درست میکردم
چهارم اینکه این سورسی که شما گذاشتین یه قسمت کوچیک از برنامه منه که به محض اینکه کارش تموم شد تصاویرشو میزارم روی سایت تا بببینید که سورس شما در برابر این برنامه من،برنامه گفته نمیشه.البته قصد جسارت ندارم و نمیخوام سورس شما رو کم ارزش جلوه بدم چرا که سه روز تا چهار روزه که بخاطرش این سایتو چک میکنم و خیلی خیلی منو به هدفم نزدیک کرده اتفاقا خیلی هم ممنونم که کمکم کردین
اما یه دوستی خوبی مثل شما اگه کمک میکنه پس این حرف خوبی نیست که بگه

اینجا کسی که تا دقیقه 90 اومده تعهدی نداره وقت اضافه هم وایسه. اینجا مشکلات برطرف میشه و کسی برای کسی برنامه نمی نویسه:متعجب::متعجب::متعجب:.
من که از شما برنامه نخواستم
ضمنا هرکسی اینجا مختاره که هیچ جوابی نده
حالا جالب اینجاست که سورس شما 95%جواب منه
بهرحال من بازم تشکر میکنم