Solved

Performence issue

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

Data in in XML format.

I have the following requirements.
I have xpathdocument want to display in table format
sorting columns
paging
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.

Thanks
Ravi

0
Comment
Question by:pprasadravi
  • 3
  • 3
  • 2
11 Comments
 
LVL 17

Expert Comment

by:AerosSaga
Comment Utility
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.

Regards,

Aeros
0
 

Author Comment

by:pprasadravi
Comment Utility
Hi Aero

agreed.But when i can user repeaterwith dataview and i can use dataview sorting.is 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?

Thanks
Ravi

0
 
LVL 12

Expert Comment

by:monosodiumg
Comment Utility
AFAIK xpathdocument has la lot less overhead than xmldocument. The latter is editable, the former isn't.
0
 
LVL 17

Accepted Solution

by:
AerosSaga earned 250 total points
Comment Utility
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.
0
What Should I Do With This Threat Intelligence?

Are you wondering if you actually need threat intelligence? The answer is yes. We explain the basics for creating useful threat intelligence.

 

Author Comment

by:pprasadravi
Comment Utility
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.
Thanks
Ravi

0
 
LVL 12

Expert Comment

by:monosodiumg
Comment Utility
Repeater can use anyting with an IEnumerable interface. That's easily wrapped round a xpathnodeiterator.
0
 

Author Comment

by:pprasadravi
Comment Utility
do you have sameple code.
0
 
LVL 12

Assisted Solution

by:monosodiumg
monosodiumg earned 250 total points
Comment Utility
> 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
  _XPathNodeIterator.MoveNext()
      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
0

Featured Post

Find Ransomware Secrets With All-Source Analysis

Ransomware has become a major concern for organizations; its prevalence has grown due to past successes achieved by threat actors. While each ransomware variant is different, we’ve seen some common tactics and trends used among the authors of the malware.

Join & Write a Comment

User art_snob (http://www.experts-exchange.com/M_6114203.html) encountered strange behavior of Android Web browser on his Mobile Web site. It took a while to find the true cause. It happens so, that the Android Web browser (at least up to OS ver. 2.…
Introduction This article shows how to use the open source plupload control to upload multiple images. The images are resized on the client side before uploading and the upload is done in chunks. Background I had to provide a way for user…
This video discusses moving either the default database or any database to a new volume.
This video explains how to create simple products associated to Magento configurable product and offers fast way of their generation with Store Manager for Magento tool.

763 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

Need Help in Real-Time?

Connect with top rated Experts

6 Experts available now in Live!

Get 1:1 Help Now