tags:

views:

14

answers:

1

Hi i have a n xml like this:

<Profile>
  <Interviewer id="111">
    <Questions>
      <Question qid="1" Catid="1" CatagoryName="General">
        <Video url="http://10.1.8.45/BIGWeb/videofiles/user1/I1C1Vid1.mp4" />
        <Quest text="Tell me about yourself by intone ?" />
        <videofile text="I1C1Vid1.mp4" />
      </Question>
      <Question qid="2" Catid="1" CatagoryName="General">
        <Video />
        <Quest text="What are your interestsone ?" />
        <videofile text="I1C1Vid2.mp4" />
      </Question>
      <Question qid="3" Catid="1" CatagoryName="General">
        <Video />
        <Quest text="What is you hobbyone ?" />
        <videofile text="I1C1Vid3.mp4" />
      </Question>

    </Questions>
  </Interviewer>
  <Interviewer id="222">
    <Questions>
      <Question qid="1" Catid="1" CatagoryName="General">
        <Video url="http://10.1.8.45/BIGWeb/videofiles/user1/I1C1Vid1.mp4" />
        <Quest text="Tell me about yourself by intone ?" />
        <videofile text="I2C1Vid1" />
      </Question>
      <Question qid="2" Catid="1" CatagoryName="General">
        <Video />
        <Quest text="What are your interestsone ?" />
        <videofile text="I2C1Vid2" />
      </Question>
      <Question qid="3" Catid="1" CatagoryName="General">
        <Video />
        <Quest text="What is you hobbyone ?" />
        <videofile text="I2C1Vid3" />
      </Question>
      <Question qid="4" Catid="1" CatagoryName="General">
        <Video />
        <Quest text="Your studiesone?" />
        <videofile text="I2C1Vid4" />
      </Question>
      <Question qid="5" Catid="1" CatagoryName="General">
        <Video />
        <Quest text="What you want to be in the futureone ?" />
        <videofile text="I2C1Vid5" />
      </Question>
      <Question qid="6" Catid="1" CatagoryName="General">
        <Video />
        <Quest text="What are your interests ?" />
        <videofile text="I2C1Vid6" />
      </Question>
      <Question qid="7" Catid="1" CatagoryName="General">
        <Video />
        <Quest text="What is your hobby ?" />
        <videofile text="I2C1Vid7" />
      </Question>
  </Questions>
  </Interviewer>
</profile>

i want video with url attribute and corresponding videofile and quest text. Note:i dont want null values of video in my LINQ query......

this wat i did

var books = from Interviewer in xmlDocument.Descendants("Interviewer")
            where Interviewer.Attribute("url").Value !=null
        select new Data
{
ques=(string)Interviewer.Element("Quest").Attribute("text").Value,
videoid = (string)Interviewer.Element("videofile").Attribute("text").Value,
videourl = (string)Interviewer.Element("Video").Attribute("url").Value

};
return books.ToList();

its not working PLS HELP... thanx in ADVANCE.....................

A: 

I can't tell what you are trying to do in your LINQ query, your have things in the select that will not be in the result set. Your line:

where Interviewer.Attribute("url").Value !=null

will cause interviewer to only contain elements that have a url attribute, where in your select you have

(string)Interviewer.Element("videofile").Attribute("text").Value
(string)Interviewer.Element("Quest").Attribute("text").Value

Interviewer will not contain videofile and quest elements as they do not have a url attribute. The only thing that will be in interviewer will be your video elements as they are the only elements that have a url attribute.

Ben Robinson
Profile> <Interviewer id="111"> <Questions> <Question qid="1" Catid="1" CatagoryName="General"> <Video url="http://10.1.8.45/BIGWeb/videofiles/user1/I1C1Vid1.mp4" /> <Quest text="Tell me about yourself by intone ?" /> <videofile text="I1C1Vid1.mp4" /> </Question> <Question qid="2" Catid="1" CatagoryName="General"> <Video /> <Quest text="What are your interestsone ?" /> <videofile text="I1C1Vid2.mp4" /> </Question> how can i get video elements only with url attribute
senthila007
You query will get all elements that have a url attribute, this will be the video elements as they are the only elements that have a url attribute. If your select said "select Interviewer;", then books would only contain video elements. However in your select you are trying to pull data out of elements that your where clause is filtering out, i.e. elements that don't have a url attribute.
Ben Robinson
hwo shud the query look like
senthila007