Go Premium for a chance to win a PS4. Enter to Win

x
?
Solved

FirstName is not a member of Profile

Posted on 2008-10-22
10
Medium Priority
?
646 Views
Last Modified: 2013-11-07
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
Comment
Question by:wilcor14
  • 5
  • 4
10 Comments
 
LVL 16

Expert Comment

by:Gyanendra Singh
ID: 22783142
use this

txtFirstName.text = Profile.FirstName
0
 
LVL 60

Expert Comment

by:Kevin Cross
ID: 22783159
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
 

Author Comment

by:wilcor14
ID: 22786011
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
VIDEO: THE CONCERTO CLOUD FOR HEALTHCARE

Modern healthcare requires a modern cloud. View this brief video to understand how the Concerto Cloud for Healthcare can help your organization.

 

Author Comment

by:wilcor14
ID: 22786041
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
 
LVL 60

Expert Comment

by:Kevin Cross
ID: 22789730
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
 

Author Comment

by:wilcor14
ID: 22789929
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
 
LVL 60

Expert Comment

by:Kevin Cross
ID: 22790391
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
 

Author Comment

by:wilcor14
ID: 22790655
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
 
LVL 60

Accepted Solution

by:
Kevin Cross earned 2000 total points
ID: 22790797
Glad you found what you needed.
0
 

Author Closing Comment

by:wilcor14
ID: 31509081
Thanks for the effort.
0

Featured Post

NEW Veeam Backup for Microsoft Office 365 1.5

With Office 365, it’s your data and your responsibility to protect it. NEW Veeam Backup for Microsoft Office 365 eliminates the risk of losing access to your Office 365 data.

Question has a verified solution.

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

The ECB site provides FX rates for major currencies since its inception in 1999 in the form of an XML feed. The files have the following format (reducted for brevity) (CODE) There are three files available HERE (http://www.ecb.europa.eu/stats/exch…
Today I had a very interesting conundrum that had to get solved quickly. Needless to say, it wasn't resolved quickly because when we needed it we were very rushed, but as soon as the conference call was over and I took a step back I saw the correct …
Exchange organizations may use the Journaling Agent of the Transport Service to archive messages going through Exchange. However, if the Transport Service is integrated with some email content management application (such as an anti-spam), the admin…
Look below the covers at a subform control , and the form that is inside it. Explore properties and see how easy it is to aggregate, get statistics, and synchronize results for your data. A Microsoft Access subform is used to show relevant calcul…

783 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