Avatar billede thomasabcd Nybegynder
17. august 2006 - 22:27 Der er 14 kommentarer og
1 løsning

AnonymousIdentification for profile virker ikke

Hej,
jeg kan simpelthen ikke få anonymousIdentification til at virke. Følgende har jeg sat ind i web.config:
<anonymousIdentification enabled="true" cookieless="UseCookies" cookieName=".ASPXANONYMOUS" cookieTimeout="30" cookiePath="/" cookieRequireSSL="false" cookieSlidingExpiration = "true" cookieProtection="Validation" />

.. hentet fra Microsoft eksempel.

Når jeg prøver at tildele en værdi til profilen får jeg følgende:
threw an exception of type 'System.Configuration.SettingsPropertyNotFoundException

.. nogle forslag?
Avatar billede snepnet Nybegynder
17. august 2006 - 22:35 #1
Må vi se de properties du har på profilen... De skal være tagget med allowAnonymous.
Mvh
Avatar billede thomasabcd Nybegynder
17. august 2006 - 22:39 #2
<properties>
        <add name="FirstName" allowAnonymous="true" type="string"/>
      </properties>
Avatar billede snepnet Nybegynder
17. august 2006 - 23:00 #3
Hmm... må jeg se hele konfig'en?

Sådan noget som det her virker fint hos mig:

    <system.web>
    <profile enabled="true">
      <properties>
        <add name="FedeLinks" type="System.Collections.Specialized.StringCollection" allowAnonymous="true"/>
        <group name="PersonalInfo">
            <add name="Age" type="System.Int32" allowAnonymous="true" />
            <add name="Height" type="System.Int32" allowAnonymous="true"/>
          </group>
      </properties>
    </profile>
    <anonymousIdentification enabled="true" />
    <compilation debug="true">
    </compilation>
        <authentication mode="Forms"/>
    </system.web>

Mvh
Avatar billede thomasabcd Nybegynder
17. august 2006 - 23:36 #4
<?xml version="1.0"?>
<configuration xmlns="http://schemas.microsoft.com/.NetConfiguration/v2.0">
  <connectionStrings>
    <add name="ConnectionString" connectionString="Data Source=XXXXXXX;Initial Catalog=XXXXX;Persist Security Info=True;User ID=XXXXXX;Password=XXXXXX"
  providerName="System.Data.SqlClient" />
</connectionStrings>
  <system.web>
    <globalization culture="da-DK" uiCulture="da"/>
    <profile enabled="true">
      <providers>
        <remove name="AspNetSqlProfileProvider" />
        <add name="AspNetSqlProfileProvider" type="System.Web.Profile.SqlProfileProvider, System.Web, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" connectionStringName="ConnectionString" applicationName="/" description="Stores and retrieves profile data from the local Microsoft SQL Server database"/>
      </providers>
      <properties>
        <add name="FirstName" allowAnonymous="true" type="string"/>
        <add name="LastName" allowAnonymous="true" type="string"/>
        <add name="Gender" allowAnonymous="true" type="string" />
        <add name="BirthDate" allowAnonymous="true" type="DateTime"/>
        <add name="MobilePhoneNumber" allowAnonymous="true" type="string"/>
        <add name="Description" allowAnonymous="true" type="string"/>
        <add name="Picture" allowAnonymous="true" type="string"/>
        <!-- store information about the user's location-->
        <group name="Location">
          <add name="LocationName" type="string"/>
          <add name="StreetName" type="string"/>
          <add name="StreetNumber" type="string"/>
          <add name="Zipcode" type="string"/>
          <add name="City" type="string" />
          <add name="CurrentCity" type="string"/>
        </group>
      </properties>
    </profile>
    <anonymousIdentification enabled="true" />
    <roleManager enabled="true">
      <providers>
        <remove name="AspNetSqlRoleProvider"/>
        <add connectionStringName="ConnectionString" applicationName="/" name="AspNetSqlRoleProvider" type="System.Web.Security.SqlRoleProvider, System.Web, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"/>
      </providers>
    </roleManager>
    <membership>
      <providers>
        <remove name="AspNetSqlMembershipProvider"/>
        <add connectionStringName="ConnectionString" enablePasswordRetrieval="false" enablePasswordReset="true" requiresQuestionAndAnswer="false" applicationName="/" requiresUniqueEmail="false" minRequiredPasswordLength="1" minRequiredNonalphanumericCharacters="0" passwordFormat="Hashed" maxInvalidPasswordAttempts="10" passwordAttemptWindow="15" passwordStrengthRegularExpression="" name="AspNetSqlMembershipProvider" type="System.Web.Security.SqlMembershipProvider, System.Web, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"/>
      </providers>
    </membership>
    <authentication mode="Forms"/>
    <compilation debug="true"/>
  </system.web>
</configuration>
Avatar billede snepnet Nybegynder
17. august 2006 - 23:47 #5
Får du ikke andet i fejlmeddelelsen.... F.eks. navnet på den property der krukkes over?
Mvh
Avatar billede thomasabcd Nybegynder
18. august 2006 - 00:01 #6
Den kommer første gang, jeg prøver at tildele en værdi til en property. Hvis jeg debugger og ser på profile-objectet, kan jeg se, at alle properties kaster en 'System.Configuration.SettingsPropertyNotFoundException
Avatar billede snepnet Nybegynder
18. august 2006 - 00:29 #7
Det lyder underligt .... Du benytter en anden connectionstring i forbindelse med profiles... Er det meningen?
Jeg har ikke noget brok med din konfiguration her - hvis jeg altså giver den en connectionstring der passer.
Mvh
Avatar billede snepnet Nybegynder
18. august 2006 - 00:30 #8
Må jeg se den kode du bruger til at tildele værdien.
Mvh
Avatar billede thomasabcd Nybegynder
18. august 2006 - 09:36 #9
Hej,

her tildeler jeg værdier:
ProfileCommon userProfile = new ProfileCommon();
userProfile.MobilePhoneNumber = sms.MobilePhoneNumber;
userProfile.FirstName = sms.Message;

mht connectionstring, er det den samme connectionstring, der henvises til: connectionStringName="ConnectionString"
userProfile.LastName = "";
Avatar billede thomasabcd Nybegynder
18. august 2006 - 09:37 #10
Fik blandet lidt rundt på tingene:

Hej,

her tildeler jeg værdier:
ProfileCommon userProfile = new ProfileCommon();
userProfile.MobilePhoneNumber = sms.MobilePhoneNumber;
userProfile.FirstName = sms.Message;
userProfile.LastName = "";


mht connectionstring, er det den samme connectionstring, der henvises til: connectionStringName="ConnectionString"
Avatar billede snepnet Nybegynder
18. august 2006 - 10:05 #11
Du skal ikke instantiere en profil - gør sådan her:
Profile.MobilePhoneNumber = sms ... osv.
Mvh
Avatar billede thomasabcd Nybegynder
18. august 2006 - 10:47 #12
Ok,
jeg bruger det i forbindelse med oprettelse af en bruger, og det sker i en klasse i App_Data. Dér kan jeg ikke tilgå Profile-objektet. Nogen idéer eller skal jeg i stedet lave en collection med de værdier, som jeg vil bruge? Brugeroprettelsen sker ved at vedkommende sender en SMS ind, så jeg kan ikke rigtigt "kaste" Profile-objectet videre fra en webside.
Avatar billede snepnet Nybegynder
18. august 2006 - 11:07 #13
((ProfileCommon)HttpContext.Current.Profile).DinProperty
Mvh
Avatar billede thomasabcd Nybegynder
18. august 2006 - 12:15 #14
SÅDAN! Tak for hjælpen. Du er en ven i nøden :-)
Avatar billede snepnet Nybegynder
18. august 2006 - 12:25 #15
Det var så lidt :o)
Et svar får du her.
Mvh
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester