Solved

Performence issue

Posted on 2004-09-29
11
328 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
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
  • 3
  • 3
  • 2
11 Comments
 
LVL 17

Expert Comment

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

Regards,

Aeros
0
 

Author Comment

by:pprasadravi
ID: 12179870
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
ID: 12179914
AFAIK xpathdocument has la lot less overhead than xmldocument. The latter is editable, the former isn't.
0
VIDEO: THE CONCERTO CLOUD FOR HEALTHCARE

Modern healthcare requires a modern cloud. View this brief video to understand how the Concerto Cloud for Healthcare can help your organization.

 
LVL 17

Accepted Solution

by:
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.
0
 

Author Comment

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

0
 
LVL 12

Expert Comment

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

Author Comment

by:pprasadravi
ID: 12180548
do you have sameple code.
0
 
LVL 12

Assisted Solution

by:monosodiumg
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
  _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

Online Training Solution

Drastically shorten your training time with WalkMe's advanced online training solution that Guides your trainees to action. Forget about retraining and skyrocket knowledge retention rates.

Question has a verified solution.

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

Today is the age of broadband.  More and more people are going this route determined to experience the web and it’s multitude of services as quickly and painlessly as possible. Coupled with the move to broadband, people are experiencing the web via …
Problem Hi all,    While many today have fast Internet connection, there are many still who do not, or are connecting through devices with a slower connect, so light web pages and fast load times are still popular.    If your ASP.NET page …
Monitoring a network: how to monitor network services and why? Michael Kulchisky, MCSE, MCSA, MCP, VTSP, VSP, CCSP outlines the philosophy behind service monitoring and why a handshake validation is critical in network monitoring. Software utilized …
Do you want to know how to make a graph with Microsoft Access? First, create a query with the data for the chart. Then make a blank form and add a chart control. This video also shows how to change what data is displayed on the graph as well as form…
Suggested Courses

624 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