无法从web.config访问自定义配置文件属性?

时间:2009-10-20 02:22:57

标签: c# asp.net asp.net-profiles

我在System.Web标记之间的web.config文件中有以下两个配置文件属性:

<anonymousIdentification enabled="true"/>
<profile>
  <properties>
    <add name="CustomerName" allowAnonymous="true"/>
    <add name="CustomerID" allowAnonymous="true"/>
  </properties>
</profile>

当我尝试从aspx.cs文件访问Profile.CustomerName或Profile.CustomerID时,它不会显示。我想当你创建一个自定义配置文件属性时,它会自动使用新属性更新aspnetdb。配置文件也不会出现在intellisense中。

2 个答案:

答案 0 :(得分:3)

如果要创建Web应用程序,则会出现此问题。与网站不同,Web Apps不会生成ProfileCommon类。 你可以遵循这个方法: http://webproject.scottgu.com/CSharp/Migration2/Migration2.aspx (附录2)

我没有亲自使用上面的程序集,所以其他人可能就此提出一些建议。 但是,您也可以尝试:

Object customerName = HttpContext.Current.Profile.GetPropertyValue("CustomerName") 

您不会使用此方法获得智能感知,但只要您知道属性名称,就可以像这样访问它。

答案 1 :(得分:0)

在web.config文件中指定属性,如下所示: - ProfilePropertyWeb.config

现在,编写以下代码: -

Code Behind Profile Properties

编译并运行代码。您将获得以下输出: -

Output