Solved

Performence issue

Posted on 2004-09-29
11
324 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
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
Microsoft Certification Exam 74-409

Veeam® is happy to provide the Microsoft community with a study guide prepared by MVP and MCT, Orin Thomas. This guide will take you through each of the exam objectives, helping you to prepare for and pass the examination.

 
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

Does Powershell have you tied up in knots?

Managing Active Directory does not always have to be complicated.  If you are spending more time trying instead of doing, then it's time to look at something else. For nearly 20 years, AD admins around the world have used one tool for day-to-day AD management: Hyena. Discover why

Question has a verified solution.

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

Suggested Solutions

In this Article, I will provide a few tips in problem and solution manner. Opening an ASPX page in Visual studio 2003 is very slow. To make it fast, please do follow below steps:   Open the Solution/Project. Right click the ASPX file to b…
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 tutorial gives a high-level tour of the interface of Marketo (a marketing automation tool to help businesses track and engage prospective customers and drive them to purchase). You will see the main areas including Marketing Activities, Design …
Email security requires an ever evolving service that stays up to date with counter-evolving threats. The Email Laundry perform Research and Development to ensure their email security service evolves faster than cyber criminals. We apply our Threat…

809 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