Level Extreme platform
Subscription
Corporate profile
Products & Services
Support
Legal
Français
Need Quick ASP.Net Lesson
Message
General information
Forum:
ASP.NET
Category:
Other
Miscellaneous
Thread ID:
01454541
Message ID:
01454573
Views:
31
>An aspx page is always recreated from scratch so your dsRoles variable is not going to survive. Either:
>(a) Recreate it each time
>(b) Save it as a session variable
>(c) Save it as a global variable
>
>BTW I seem to recognize this:
dsRoles = DataLayer.ExecuteQuery("as_GetRole", Params, CommandType.StoredProcedure);
What was causing the error you were having ?

Oh, I had not set up my DA class property. Not sure why it was erroring the way it was too. It's on my list of things to look at.




>
>
>>As I'm VERY new to ASP.Net, I'm not sure I understand how things work.
>>
>>I put together a composite usercontrol. It has a listbox that shows user roles. When a role is selected, the RoleName, RoleCode, and
>>Description are pulled from data and displayed in 3 textboxes - at leats that's what the goal is.
>>
>>At this point when I run it the listbox is populated. But the DataSet that's bound to the list is then null when I attempt to access
>>it from SelectedIndexChanged. I'm guessing that I'm doing this wrong.
>>
>>Here's the code.
>>
>>
>>using System;
>>using System.Collections.Generic;
>>using System.Configuration;
>>using System.Data;
>>using System.Data.Common;
>>using System.Data.SqlClient;
>>using Marois.Common.DataAccess;
>>
>>public partial class crlRoles : System.Web.UI.UserControl
>>{
>>    private DataSet dsRoles = null;
>>    private DataAccess DataLayer = null;
>>
>>    protected void Page_Load(object sender, EventArgs e)
>>    {
>>        if (!IsPostBack)
>>        {
>>            DataLayer = new DataAccess();
>>            _LoadList();
>>        }
>>    }
>>
>>    private void _LoadList()
>>    {
>>        DataLayer.ProviderInvariantName = "System.Data.SqlClient";
>>        DataLayer.ConnectionString = ConfigurationManager.ConnectionStrings["ApexGlobalConnectionString"].ConnectionString;
>>
>>        dsRoles = DataLayer.ExecuteQuery("as_GetRole", CommandType.StoredProcedure);
>>
>>        lstRoles.DataSource = dsRoles.Tables[0];
>>        lstRoles.DataTextField = "RoleName";
>>        lstRoles.DataBind();
>>    }
>>
>>    protected void lstRoles_SelectedIndexChanged(object sender, EventArgs e)
>>    {
>>        if (lstRoles.SelectedIndex > -1)
>>        {
>>            int RoleKey = (int)dsRoles.Tables[0].Rows[lstRoles.SelectedIndex]["RoleKey"];
>>
>>            SqlParameter pRoleKey = new SqlParameter("@RoleKey", RoleKey);
>>            List<DbParameter> Params = new List<DbParameter>();
>>            Params.Add(pRoleKey);
>>
>>            dsRoles = DataLayer.ExecuteQuery("as_GetRole", Params, CommandType.StoredProcedure);
>>
>>            txtRoleName.Text = dsRoles.Tables[0].Rows[0]["Name"].ToString();
>>            txtRoleCode.Text = dsRoles.Tables[0].Rows[0]["RoleCode"].ToString();
>>            txtDescription.Text = dsRoles.Tables[0].Rows[0]["Description"].ToString();
>>        }
>>    }
>>}
>>
>>
Everything makes sense in someone's mind
public class SystemCrasher :ICrashable
In addition, an integer field is not for irrational people
Previous
Reply
Map
View

Click here to load this message in the networking platform