In this article I am going to explain how to bind 
multiple drop down list from single sqldatareader.
First I have created two table and one procedure. Run given below script in your Sql Server.
	
	
	
First I have created two table and one procedure. Run given below script in your Sql Server.
| 
		SET
		ANSI_NULLS  
		ON 
		GO 
		SET
		QUOTED_IDENTIFIER
		
		ON 
		GO 
		SET
		ANSI_PADDING  
		ON 
		GO 
		IF
		NOT EXISTS
		(SELECT
		* FROM
		sys.objects
		WHERE 
		object_id =
		OBJECT_ID(N'[dbo].[Sha_Country]')
		AND type
		in 
		(N'U')) 
		BEGIN 
		CREATE
		TABLE [dbo].[Sha_Country]( 
		                [CountryId] [int] IDENTITY(1,1)
		NOT NULL, 
		                [CountryName] [varchar](50)
		COLLATE SQL_Latin1_General_CP1_CI_AS
		NOT NULL 
		)
		ON [PRIMARY] 
		END 
		GO 
		SET
		ANSI_PADDING  
		OFF 
		GO 
		SET
		IDENTITY_INSERT [dbo].[Sha_Country]
		
		ON 
		INSERT 
		[dbo].[Sha_Country]
		([CountryId], 
		[CountryName]) 
		VALUES (1,
		N'Afghanistan') 
		INSERT 
		[dbo].[Sha_Country]
		([CountryId], 
		[CountryName]) 
		VALUES (2,
		N'Brazil') 
		INSERT 
		[dbo].[Sha_Country]
		([CountryId], 
		[CountryName]) 
		VALUES (3,
		N'Cuba') 
		INSERT 
		[dbo].[Sha_Country]
		([CountryId], 
		[CountryName]) 
		VALUES (4,
		N'Egypt') 
		INSERT 
		[dbo].[Sha_Country]
		([CountryId], 
		[CountryName]) 
		VALUES (5,
		N'India') 
		SET
		IDENTITY_INSERT [dbo].[Sha_Country]
		
		OFF 
		SET
		ANSI_NULLS  
		ON 
		GO 
		SET
		QUOTED_IDENTIFIER
		
		ON 
		GO 
		SET
		ANSI_PADDING  
		ON 
		GO 
		IF
		NOT EXISTS
		(SELECT
		* FROM
		sys.objects
		WHERE 
		object_id =
		OBJECT_ID(N'[dbo].[Sha_Services]')
		AND type
		in 
		(N'U')) 
		BEGIN 
		CREATE
		TABLE [dbo].[Sha_Services]( 
		                [ServiceID] [int] IDENTITY(1,1)
		NOT NULL, 
		                [ServiceName] [varchar](30)
		COLLATE SQL_Latin1_General_CP1_CI_AS
		NOT NULL 
		)
		ON [PRIMARY] 
		END 
		GO 
		SET
		ANSI_PADDING  
		OFF 
		GO 
		SET
		IDENTITY_INSERT [dbo].[Sha_Services]
		
		ON 
		INSERT 
		[dbo].[Sha_Services]
		([ServiceID], 
		[ServiceName]) 
		VALUES (1,
		N'Service1') 
		INSERT 
		[dbo].[Sha_Services]
		([ServiceID], 
		[ServiceName]) 
		VALUES (2,
		N'Service2') 
		INSERT 
		[dbo].[Sha_Services]
		([ServiceID], 
		[ServiceName]) 
		VALUES (3,
		N'Service3') 
		INSERT 
		[dbo].[Sha_Services]
		([ServiceID], 
		[ServiceName]) 
		VALUES (4,
		N'Service4') 
		INSERT 
		[dbo].[Sha_Services]
		([ServiceID], 
		[ServiceName]) 
		VALUES (5,
		N'Service5') 
		SET
		IDENTITY_INSERT [dbo].[Sha_Services]
		
		OFF 
		SET
		ANSI_NULLS  
		ON 
		GO 
		SET
		QUOTED_IDENTIFIER
		
		ON 
		GO 
		IF
		NOT EXISTS
		(SELECT
		* FROM
		sys.objects
		WHERE 
		object_id =
		OBJECT_ID(N'[dbo].[sha_GettwoList]')
		AND type
		in 
		(N'P',
		N'PC')) 
		BEGIN 
		EXEC 
		dbo.sp_executesql
		@statement =
		
		N' 
		-- ============================================= 
		-- Author:                              Sharad Gupta 
		-- Create date: 6-Jan-2015 
		-- Description:        
		-- ============================================= 
		CREATE PROCEDURE [dbo].[sha_GettwoList] 
		AS 
		BEGIN 
		                -- SET NOCOUNT ON added to prevent extra result sets 
		from 
		                -- interfering with SELECT statements. 
		                SET NOCOUNT ON; 
		                SELECT ServiceID, 
		                                ServiceName 
		                FROM sha_services 
		                SELECT CountryId, 
		                                CountryName 
		                FROM Sha_Country 
		END 
		'
		
		 
		END 
		GO | 
Now Here code for c# to bind two dropdown list from single SqlDataReader using 
NextResult() method.
 C# 
code
| 
using 
		System; 
using 
		System.Web.UI.WebControls; 
using 
		System.Data; 
using 
		System.Data.SqlClient; 
		public
		partial class
		DropDown : System.Web.UI.Page 
{ 
   
		protected void 
		Page_Load(object sender,
		EventArgs e) 
    { 
       
		if (!IsPostBack) 
        { 
            
		GetDropDownValues(); 
        } 
    } 
   
		private void 
		GetDropDownValues() 
    { 
       
		SqlConnection con =
		new 
		SqlConnection("data 
		source=.;Database=test;uid=********;pwd=********"); 
        
		con.Open(); 
       
		SqlCommand cmd =
		new 
		SqlCommand("sha_GettwoList", 
		con); 
        
		cmd.CommandType = CommandType.StoredProcedure; 
       
		SqlDataReader dr = cmd.ExecuteReader(); 
       
		if (dr.HasRows)// 
		it is not necessity to check it returen true or false || true if one or 
		more row otherwise false 
        { 
            
		ddlService.DataSource = dr; 
            
		ddlService.DataTextField = "ServiceName"; 
            
		ddlService.DataValueField = "ServiceID"; 
            
		ddlService.DataBind(); 
            
		ddlService.Items.Insert(0, new
		ListItem("Select 
		Services", "0")); 
            
		dr.NextResult();// for next select statement 
           
		if (dr.HasRows) 
            { 
                ddlCountry.DataSource 
		= dr; 
                
		ddlCountry.DataTextField = "CountryName"; 
                
		ddlCountry.DataValueField = "CountryId"; 
                
		ddlCountry.DataBind(); 
                
		ddlCountry.Items.Insert(0, new
		ListItem("Select 
		Country", "0")); 
            } 
           
		else { 
                
		ddlCountry.Items.Insert(0, new
		ListItem("Country 
		Not Found", "0")); 
            } 
        } 
       
		else{ 
            
		ddlService.Items.Insert(0, new
		ListItem("Services 
		Not Found", "0")); 
        } 
    } 
} | 
Source Code
| 
		<%@
		Page Language="C#"
		AutoEventWireup="true"
		CodeFile="DropDown.aspx.cs"
		Inherits="DropDown" 
		%> 
<!DOCTYPE
		html PUBLIC
		"-//W3C//DTD XHTML 1.0 Transitional//EN"
		"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 
<html
		xmlns="http://www.w3.org/1999/xhtml"> 
<head
		runat="server"> 
    <title></title> 
</head> 
<body> 
    <form
		id="form1"
		runat="server"> 
    <div> 
    <fieldSet> 
    <legend>Multi 
		DropDown List</legend> 
    <table> 
    <tr> 
    <td>Services:</td> 
    <td><asp:DropDownList
		ID="ddlService"
		runat="server"></asp:DropDownList>
		</td> 
    </tr> 
    <tr> 
    <td>Country:</td> 
    <td><asp:DropDownList
		ID="ddlCountry"
		runat="server"></asp:DropDownList>
		</td> 
    </tr> 
    </table> 
    </fieldSet> 
    </div> 
    </form> 
</body> 
</html> | 
OutPut:
