[Webinar] Streamline your web hosting managementRegister Today

x
  • Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 647
  • Last Modified:

FirstName is not a member of Profile

I am trying to use the new Profile features in .Net 2.0. But when I enter the following I get an error saying that FirstName is not a member of Profile.

txtFirstName.text = Profile.firstname

Any ideas on what I'm missing? Thanks
<profile enabled ="true" defaultProvider="AspNetSqlProfileProvider">
      <providers>
        <add connectionStringName="LocalSqlServer" applicationName="/CoachingSource"
           name="AspNetSqlProfileProvider" type="System.Web.Profile.SqlProfileProvider, System.Web, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
        </providers>
      <properties>
        <add name="FirstName" type="String" serializeAs="String" />
        <add name="LastName" type="String" serializeAs="String" />
        <add name="LastVisited" type="String" serializeAs="String" />
        <add name="Age" type="String" serializeAs="String" />
        <add name="Member" type="String" serializeAs="String" />
      </properties>
    </profile>

Open in new window

0
wilcor14
Asked:
wilcor14
  • 5
  • 4
1 Solution
 
Gyanendra SinghArchitectCommented:
use this

txtFirstName.text = Profile.FirstName
0
 
Kevin CrossChief Technology OfficerCommented:
As long as the above is under <system.web> the properties work fine as Profile.FirstName.  Not sure if case sensitive, but you can try.

Think when you specify a Sql provider or any provider for that matter, that the properties come from the provider and so the properties section is ignored.  Check if the database has the same properties in its table for profile.
0
 
wilcor14Author Commented:
Thanks for the help. I have the table set up but in apsnet_Profile, there is nothing in the table. Does that make a difference?
0
The new generation of project management tools

With monday.com’s project management tool, you can see what everyone on your team is working in a single glance. Its intuitive dashboards are customizable, so you can create systems that work for you.

 
wilcor14Author Commented:
I went to the Web Site Administration tool and clicked on the provider tab. The only providers listed are those for membership and role management but nothing for profile management. Is this correct? Thanks.
0
 
Kevin CrossChief Technology OfficerCommented:
I believe you have to create it manually (through SQL) as these are custom properties.  Here is an example from Microsoft:
http://msdn.microsoft.com/en-us/library/8zs47k7y.aspx
0
 
wilcor14Author Commented:
mwvisa1

I don't think it has anything to do with my database since in my vb project I getting the erro that FirstName is not a member of Profile. Or not?
0
 
Kevin CrossChief Technology OfficerCommented:
Ok, well where is it suppose to get the structure of Profile object then?

You specified the database is the provider of the profile, so it must use the database to determine the structure.  At least that is my understanding.  If this is supposed to function otherwise, then hopefully someone knows how to get it working.

Hopefully you already tried making the property in case to match the property setup FirstName as suggested in case it is case sensitive.  Would not want you to waste time otherwise.

Anyhow, I apologize that I can't be more helpful, but my knowledge on this subject is limited to what I have already suggested. :(

Regards,
Kevin
0
 
wilcor14Author Commented:
Found a post that explains what the problem is. I am running a Web application.

I know web applications (as opposed to web sites) handle profiles a little differently because of the way things are compiled.  If you are using a web application we may have to find another way around this issue.


Here is the solution to grabbing a different users profile if you are using a web application.  Enjoy!

 In most of the code examples you have seen they use a ProfileCommon class.  That is because they are working with a website and that class is created while they are still developing.  That is also why they get intellisense when using profiles.  When using a web app the code won't compile until run time so we don't get the intellisense and we don't get the ProfileCommon class.  ProfileCommon's base class is ProfileBase.  We can use this class the same way they were to an extent.  Just look at the sample code below.  I think it will make sense.
Dim strUserName As String = Me.lstUsers.SelectedValue
Dim userProfile As ProfileBase = ProfileBase.Create(strUserName, True) 'if the user already has a profile this will just grab their profile, it won't overwrite it, don't worry
 
Me.txtFirstName.Text = userProfile.GetPropertyValue("FirstName")
Me.txtLastName.Text = userProfile.GetPropertyValue("LastName")
Me.txtEmailAddress.Text = Membership.GetUser(strUserName).Email 

Open in new window

0
 
Kevin CrossChief Technology OfficerCommented:
Glad you found what you needed.
0
 
wilcor14Author Commented:
Thanks for the effort.
0

Featured Post

Keep up with what's happening at Experts Exchange!

Sign up to receive Decoded, a new monthly digest with product updates, feature release info, continuing education opportunities, and more.

  • 5
  • 4
Tackle projects and never again get stuck behind a technical roadblock.
Join Now