Performence issue

Posted on 2004-09-29
Last Modified: 2006-11-17

Data in in XML format.

I have the following requirements.
I have xpathdocument want to display in table format
sorting columns
any column may have link(Anchor).

Solutions :

1.    developing page using REPEATER and populating dataset with xml data and schema(for datatypes will use for sorting) and writing custom paging.
2.   developing page using xml,xsl and schema(xsd) so we can use xsl sorting but i am not sure about the paing.

3.   developing page using ASP:TABLE,xpathnodeiterator and use addsort with xpathexpression and populate the table with velues.this case i need to apply row style ,header style and column style and formating rules when looping through xpathnodeiterator.

Issue :

I am not able to take the decision which one is efficient.
we need to design the pages with high performentce(i need to get quick responce).

If anybody have clue pls help me.


Question by:pprasadravi
  • 3
  • 3
  • 2
LVL 17

Expert Comment

ID: 12179792
don't use the asp:table, it is very buggy at this point in VS.NET 2003.  The reapeater is a good choice for performance, but you will have to implament custom paging and sorting routines.  As long as your ok with this overhead this is definately the way to go for performance.  Otherwise, if you want paging and sorting functionality built-in use a datagrid.  There is a slight performance trade off, but if you have never created custom paging and sorting it might be worth it to you.  At this point, the you have to way the pros/cons for yourself.



Author Comment

ID: 12179870
Hi Aero

agreed.But when i can user repeaterwith dataview and i can use dataview it going to be overhead.
I will display data using repeater and datasource is going to be dataset(load xmldocument and xsd).

i have another question sorting with dataview,xpathexpressiona and xsl sorting
Which is efficient.

loading xmldocument and xsd is time consuming process?


LVL 12

Expert Comment

ID: 12179914
AFAIK xpathdocument has la lot less overhead than xmldocument. The latter is editable, the former isn't.
Free Tool: ZipGrep

ZipGrep is a utility that can list and search zip (.war, .ear, .jar, etc) archives for text patterns, without the need to extract the archive's contents.

One of a set of tools we're offering as a way to say thank you for being a part of the community.

LVL 17

Accepted Solution

AerosSaga earned 250 total points
ID: 12179916
hmmm...not sure about performance differences between xpath,xsl, and dataview.  But dataview will save you a load of time.  As long as you have a decent server I would go with that.

Author Comment

ID: 12179952
hi  Mono
Agreed.xpath document is light weight and we can do sorting. but i can't use xpathnodeiterator as datasource for repeater.

Still the question is performance differences between xpath,xsl, and dataview.

LVL 12

Expert Comment

ID: 12180063
Repeater can use anyting with an IEnumerable interface. That's easily wrapped round a xpathnodeiterator.

Author Comment

ID: 12180548
do you have sameple code.
LVL 12

Assisted Solution

monosodiumg earned 250 total points
ID: 12181677
> do you have sameple code.
who is 'you'?

In case its me, here is a quick (untested) implementation:

class MyEnumarableXPathNodeIterator impements IEnumerable
 private _XPathNodeIterator as XPathNodeIterator
 sub new(oXPathNodeIterator as XPathNodeIterator)
   _XPathNodeIterator  = oXPathNodeIterator.Clone
 end sub

  class MyXPathoNodeEnumerator
    private _XPathNodeIteratorClean as XPathNodeIterator
    private _XPathNodeIteratorCur as XPathNodeIterator
    public sub New(oXPathNodeIterator as XPathNodeIterator)
             _XPathNodeIteratorClean = oXPathNodeIterator.Clone
             _XPathNodeIteratorCur  = _XPathNodeIteratorClean
       end sub

      readonly public property Current
      begin get
        return _XPathNodeIteratorCur      
      end get
      end property

Function MoveNext() As Boolean
      return _XPathNodeIteratorCur.CurrentPosition > 0
end function

Sub Reset()
      _XPathNodeIteratorCur  = _XPathNodeIteratorClean.Clone()
end sub

 end class

 public function GetEnumerator() as IEnumerator
   implements IEnumerable.GetEnumerator
 end function

end class

Featured Post

Free Tool: Subnet Calculator

The subnet calculator helps you design networks by taking an IP address and network mask and returning information such as network, broadcast address, and host range.

One of a set of tools we're offering as a way of saying thank you for being a part of the community.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

I have developed many web applications with asp & and to add and use a dropdownlist was always a very simple task, but with the new, setting the value is a bit tricky and its not similar to the old traditional method. So in this a…
International Data Corporation (IDC) prognosticates that before the current the year gets over disbursing on IT framework products to be sent in cloud environs will be $37.1B.
This video shows how to use Hyena, from SystemTools Software, to bulk import 100 user accounts from an external text file. View in 1080p for best video quality.
Although Jacob Bernoulli (1654-1705) has been credited as the creator of "Binomial Distribution Table", Gottfried Leibniz (1646-1716) did his dissertation on the subject in 1666; Leibniz you may recall is the co-inventor of "Calculus" and beat Isaac…

808 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question