tags:

views:

267

answers:

2

I have a XML and XSD I want to add a record to trck table with Dataset i'm also write that code but need trackListrow... how can i handle that?

playListDS rec = new playListDS();
            if(File.Exists(Server.MapPath("~/playlist.xml")))
                rec.ReadXml(Server.MapPath("~/playlist.xml"));


            int id = int.Parse(rec.track.Rows[rec.track.Rows.Count - 1][0].ToString()) + 1;

            if (ViewState["Filename"] != null && ViewState["Cover"] != null)
            {
                playListDS.trackListRow row  = new playListDS.trackListRow();
                  rec.track.AddtrackRow(id.ToString(), "mp3/" + ViewState["Filename"].ToString(), txtartist.Text,
                  txtalbum.Text, txttitle.Text,
                  txtannotation.Text, txtduration.Text, "mp3/cover" + ViewState["Cover"].ToString(),
                  txtinfo.Text, txtlink.Text);


    <?xml version="1.0"?>
<!-- Generated using Flame-Ware Solutions XML-2-XSD v2.0 at http://www.flame-ware.com/Products/XML-2-XSD/ -->
<xs:schema id="playListDS" targetNamespace="http://tempuri.org/playListDS.xsd" xmlns:mstns="http://tempuri.org/playListDS.xsd" xmlns="http://tempuri.org/playListDS.xsd" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata" attributeFormDefault="qualified" elementFormDefault="qualified">
  <xs:element name="playListDS" msdata:IsDataSet="true" msdata:UseCurrentLocale="true">
    <xs:complexType>
      <xs:choice minOccurs="0" maxOccurs="1">
        <xs:element name="trackList">
          <xs:complexType>
            <xs:sequence>
              <xs:element name="track" minOccurs="0" maxOccurs="unbounded">
                <xs:complexType>
                  <xs:sequence>
                    <xs:element name="FileID" type="xs:string" minOccurs="0" />
                    <xs:element name="location" type="xs:string" minOccurs="0" />
                    <xs:element name="creator" type="xs:string" minOccurs="0" />
                    <xs:element name="album" type="xs:string" minOccurs="0" />
                    <xs:element name="title" type="xs:string" minOccurs="0" />
                    <xs:element name="annotation" type="xs:string" minOccurs="0" />
                    <xs:element name="duration" type="xs:string" minOccurs="0" />
                    <xs:element name="image" type="xs:string" minOccurs="0" />
                    <xs:element name="info" type="xs:string" minOccurs="0" />
                    <xs:element name="link" type="xs:string" minOccurs="0" />
                  </xs:sequence>
                </xs:complexType>
              </xs:element>
            </xs:sequence>
          </xs:complexType>
        </xs:element>
      </xs:choice>
    </xs:complexType>
  </xs:element>
</xs:schema>


<?xml version="1.0" standalone="yes"?>
<playListDS xmlns="http://tempuri.org/playListDS.xsd"&gt;
  <trackList>
    <track>
      <FileID>6</FileID>
      <location>mp3/Gomez - See The World-1.mp3</location>
      <creator>Gomez</creator>
      <album>How We Operate</album>
      <title>See the World</title>
      <annotation>Buraya kendi yorumun gelicek boş kalabilir</annotation>
      <duration>243670</duration>
      <image>mp3/coverChrysanthemum.jpg</image>
      <info />
      <link>Grubun bi sitesi fln varsa buraya yazabilisin yoksa beni sil</link>
    </track>
  </trackList>
</playListDS>
A: 

Do you mean something like this:

playListDS rec = new playListDS();
if(File.Exists(Server.MapPath("~/playlist.xml")))
{
    rec.ReadXml(Server.MapPath("~/playlist.xml"));
}

int id = int.Parse(rec.track.Rows[rec.track.Rows.Count - 1][0].ToString()) + 1;

if (ViewState["Filename"] != null && ViewState["Cover"] != null)
{
    playListDS.trackListRow row = rec.track.AddtrackRow(id.ToString(), "mp3/" +
                              ViewState["Filename"].ToString(), txtartist.Text,
                              txtalbum.Text, txttitle.Text,
                              txtannotation.Text, txtduration.Text, "mp3/cover" +
                              ViewState["Cover"].ToString(),
                              txtinfo.Text, txtlink.Text);
}

All you need is the new added row? If so, you get the new row from the AddtrackRow method.

Elisha
A: 

yeah but that manipulate xml like that. Dew mp3 player can't see two trackList Table...

     <trackList>
    <track>
      <FileID>6</FileID>
      <location>mp3/Gomez - See The World-1.mp3</location>
      <creator>Gomez</creator>
      <album>How We Operate</album>
      <title>See the World</title>
      <annotation>Buraya kendi yorumun gelicek boş kalabilir</annotation>
      <duration>243670</duration>
      <image>mp3/coverChrysanthemum.jpg</image>
      <info />
      <link>Grubun bi sitesi fln varsa buraya yazabilisin yoksa beni sil</link>
    </track>
  </trackList>
  <trackList>
    <track>
      <FileID>8</FileID>
      <location>mp3/Archives - Sleepdriving.mp3</location>
      <creator>Grand Archives</creator>
      <album>KEXP</album>
      <title>Sleepdriving</title>
      <annotation>Buraya kendi yorumun gelicek boş kalabilir</annotation>
      <duration>323562</duration>
      <image>mp3/coverDesert.jpg</image>
      <info>PITCHFORK / FORKCAST
http://pitchforkmedia.com&lt;/info&gt;
      <link>Grubun bi sitesi fln varsa buraya yazabilisin yoksa beni sil</link>
    </track>
  </trackList>
Megawolt
You might want to edit your original post rather than posting your response as an answer. See **What if I don't get a good answer?** in the FAQ. http://stackoverflow.com/faq
TrueWill