Solved

Populate Datalist on Web User Control

Posted on 2003-12-11
13
342 Views
Last Modified: 2007-12-19
I have a web form(page1.aspx) that requests 4 different recordsets from an sql 2000 server. In the page1 codebehind I bind the first 3 recordsets to 3 different datalists. I would like to bind the 4th recordset to a Datalist that is contained in a user control. I am an intermediate level programmer so details would be great. Thanks in advance
0
Comment
Question by:CUTTHEMUSIC
[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
  • 7
  • 6
13 Comments
 
LVL 8

Expert Comment

by:Dranizz
ID: 9922231
Forget about recordser, think ADO.NET with Datasets and DataTable
0
 
LVL 2

Author Comment

by:CUTTHEMUSIC
ID: 9922244
Dranizz I'm not sure what you mean. Maybe I am using the wrong terms.
0
 
LVL 8

Expert Comment

by:Dranizz
ID: 9922294
Well, in VB.NET we don't use recordset anymore, we use Datasets.
They are real representation of your data in the database, and it's disconnected.

http://visualbasic.about.com/library/weekly/aa041203a.htm

http://msdn.microsoft.com/library/default.asp?url=/library/en-us/cpref/html/frlrfsystemdatadatasetclasstopic.asp
0
Resolve Critical IT Incidents Fast

If your data, services or processes become compromised, your organization can suffer damage in just minutes and how fast you communicate during a major IT incident is everything. Learn how to immediately identify incidents & best practices to resolve them quickly and effectively.

 
LVL 2

Author Comment

by:CUTTHEMUSIC
ID: 9922348
Here is the code that I have

Private Sub getDataAndFill()
        Dim myDataSet As New DataSet
        Dim MyDataAdapter As SqlDataAdapter
        Dim ConString As String = ""
        'CONNECT TO DATABASE
        ConString = ConfigurationSettings.AppSettings("readDbConnString")
        MyDataAdapter = New SqlDataAdapter("Stored_HomePage", ConString)
        MyDataAdapter.SelectCommand.CommandType = CommandType.StoredProcedure
        'FILL DATALISTS
        MyDataAdapter.Fill(myDataSet)
        'BLOG ARCHIVE

        DLBlogArchive.DataSource = myDataSet
        DLBlogArchive.DataMember = "Table"
        'BLOG
        DLBlog.DataSource = myDataSet
        DLBlog.DataMember = "Table1"
        'PHOTOS
        DLPopularPhotos.DataSource = myDataSet
        DLPopularPhotos.DataMember = "Table2"
        'LINKS
        DLPopularLinks.DataSource = myDataSet
        DLPopularLinks.DataMember = "Table3"
       
        'BIND
        DLBlogArchive.DataBind()

        DLBlog.DataBind()
        DLPopularPhotos.DataBind()
        DLPopularLinks.DataBind()

    End Sub


the DLBlogArchive is the datalist that I want to put on the web control since many pages will use it.
0
 
LVL 8

Expert Comment

by:Dranizz
ID: 9922404
by the way datalist is the control, Dataset is what you fill, it's a class
what is the problem exactly?
0
 
LVL 2

Author Comment

by:CUTTHEMUSIC
ID: 9922430
I may be using the wrong terms.
I want to store the datalist in blogArchiveList.ascx  and then fill the list from the page1.aspx code behind/
0
 
LVL 8

Expert Comment

by:Dranizz
ID: 9922500
use a session
save it on a session like this

On load

Session("Data")=myDataSet

and to get it back

dim data as Dataset

data=Session("Data")
0
 
LVL 2

Author Comment

by:CUTTHEMUSIC
ID: 9922515
I can't use sessions.
0
 
LVL 8

Expert Comment

by:Dranizz
ID: 9922561
hum...
then use the transfer method

Set to public attributes for your 2 strings in the Page1 class

like

Public Dataset Data;


server.Transfer("Page2.aspx",true);

And at page2 load you'll do this

System.Collections.Specialized.NameValueCollection ColForm;
'Get the data from the source form
colForm=Request.Form

and gets the value from the source form

dim ds as Dataset
ds=  colForm["Data"]
0
 
LVL 2

Author Comment

by:CUTTHEMUSIC
ID: 9922664
can you use server.transfer for a ASCX
0
 
LVL 8

Expert Comment

by:Dranizz
ID: 9922759
no...
You got yourself into something hard...
0
 
LVL 2

Author Comment

by:CUTTHEMUSIC
ID: 9922776
maybe there is a better way then. The reason I am using a ascx page is because the blog archive is something that I want to use on almost every page. In old ASP I would use an include file.
0
 
LVL 8

Accepted Solution

by:
Dranizz earned 250 total points
ID: 9922839
but if you use your ascx in a form and save the dataset in that form, then use the transfer, it could work

That's what I would do.

Use a property in the ascx to indicate the dataset to use or to save
0

Featured Post

Free Tool: IP Lookup

Get more info about an IP address or domain name, such as organization, abuse contacts and geolocation.

One of a set of tools we are providing to everyone 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

Suggested Solutions

This document covers how to connect to SQL Server and browse its contents.  It is meant for those new to Visual Studio and/or working with Microsoft SQL Server.  It is not a guide to building SQL Server database connections in your code.  This is mo…
A long time ago (May 2011), I have written an article showing you how to create a DLL using Visual Studio 2005 to be hosted in SQL Server 2005. That was valid at that time and it is still valid if you are still using these versions. You can still re…
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…
Finds all prime numbers in a range requested and places them in a public primes() array. I've demostrated a template size of 30 (2 * 3 * 5) but larger templates can be built such 210  (2 * 3 * 5 * 7) or 2310  (2 * 3 * 5 * 7 * 11). The larger templa…

761 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