首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >ASP.NET成员资格不会填充新用户

ASP.NET成员资格不会填充新用户
EN

Stack Overflow用户
提问于 2009-08-10 20:18:57
回答 2查看 693关注 0票数 1

我正在使用ASP.NET成员资格提供程序来处理当前站点上的所有成员资格活动。

我遇到了一个奇怪的问题。如您所知,如果您熟悉Asp.Net成员资格,那么数据将存储在ProfileCommon中。

因此,您可以执行ProfileCommon.UserId来获取userID。

这一切在我的生产服务器、中间服务器和本地开发服务器上的旧帐户上都工作得很好。

但是,如果我在本地开发服务器上创建一个新用户,Profilecommon对象不会被填充,并且会抛出错误,因为页面引用了ProfileCommon.UserId,并且它为空,因此抛出了异常。用户已通过身份验证,但未填充ProfileCommon。

有没有人有任何想法/建议来解释为什么会发生这种情况?

编辑:这是我的web.config条目。我不确定为什么我们先删除AspnetSqlProfileProvider然后再添加它。这是一个我接管的网站,我还不是100%熟悉asp.net会员。

代码语言:javascript
复制
  <profile defaultProvider="AspNetSqlProfileProvider">
  <providers>
    <remove name="AspNetSqlProfileProvider"/>
    <add name="AspNetSqlProfileProvider"
         type="System.Web.Profile.SqlProfileProvider" 
         connectionStringName="ConnectionString"/>
</providers>

实际的个人资料信息;

代码语言:javascript
复制
        <profile defaultProvider="SqlProfileProvider">
        <providers>
            <remove name="AspNetSqlProfileProvider"/>
            <add name="SqlProfileProvider" type="System.Web.Profile.SqlProfileProvider" connectionStringName="FiftyMillionDBConnection"/>
        </providers>
        <properties>
            <add name="FirstName" type="String" serializeAs="String"/>
            <add name="LastName" type="String" serializeAs="String"/>
            <add name="EmailAddress" type="String" serializeAs="String"/>
            <add name="ScreenName" type="String" serializeAs="String"/>
            <add name="BirthDay" type="DateTime" serializeAs="String"/>
            <group name="Address">
                <add name="AddressLine1" type="String" serializeAs="String"/>
                <add name="AddressLine2" type="String" serializeAs="String"/>
                <add name="City" type="String" serializeAs="String"/>
                <add name="State" type="String" serializeAs="String"/>
                <add name="Zip" type="String" serializeAs="String"/>
            </group>
            <group name="PersonalInfo">
                <add name="Gender" type="String" serializeAs="String"/>
                <add name="Height" type="String" serializeAs="String"/>
            </group>
            <group name="OtherInfo">
                <add name="Agent" type="String" serializeAs="String"/>
                <add name="Employee" type="String" serializeAs="String"/>
                <add name="Source" type="String" serializeAs="String"/>
                <add name="EventRegistration" type="String" serializeAs="String"/>
            </group>
            <group name="AuthInfo">
                <add name="GUID" type="String" serializeAs="String"/>
                <add name="RegSource" type="String" serializeAs="String"/>
                <add name="ReceiveMail" type="String" serializeAs="String"/>
            </group>
        </properties>
    </profile>

谢谢!

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2009-08-10 21:53:32

除了connectionStringName之外,您可能还需要仔细检查applicationName。如果它们不匹配,或者您在一个部分中定义了应用程序名称而没有在另一个部分中定义,您就会遇到问题。

代码语言:javascript
复制
   <membership defaultProvider="SqlProvider">
      <providers>
         <add name="SqlProvider"
          type="..."  
          connectionStringName="SomeConnString"
          applicationName="SomeApp"
          ...
          ... />
      </providers>
   </membership>

   <profile defaultProvider="ProfileProvider">
     <providers>
        <clear />
        <add name="ProfileProvider" 
            type="..." 
            applicationName="SomeApp"/>
     </providers>
     <properties>
        ...
     </properties>
  </profile>
票数 1
EN

Stack Overflow用户

发布于 2009-08-10 20:30:07

web.config中的配置文件部分是否使用与成员资格部分相同的connectionStringName值?这是我要检查的第一件事。

编辑:您可以发布完整的个人资料配置块吗?您应该有一些定义属性的东西,比如

代码语言:javascript
复制
<profile enabled="true">

    <properties>

        <add name="UserId" type="Int32"/>

        <add name="Gender" type="string"/>

        <add name="Age" type="Int32"/>

    </properties>

</profile>
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/1256979

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档