我正在尝试使用ASP.net配置文件我已经遵循了一些说明,这意味着我有
但我似乎无法使用代码(即Intellisense不喜欢它)
Profile.UserCustomContent = "Hi Mom";
很明显我错过了一些重要的东西,但是我看不到,请帮助我......
以下是我web.config
<connectionStrings>
<add name="SqlServices"
connectionString="Data Source=localhost;Integrated Security=SSPI;Initial Catalogue=aspnetdb" />
</connectionStrings>
<system.web>
<authentication mode="Windows" />
<authorization>
<deny users="?"/>
</authorization>
<profile enabled="true" defaultProvider="SqlServices">
<providers>
<clear/>
<add name="SqlProvider" type="System.Web.Profile.SqlProfileProvider"
connectionStringName="SqlServices" applicationName="MyInternalApplication" />
</providers>
<properties>
<add name="UserSearchFilterOptions" type="String" />
<add name="UserCustomContent" type="String"/>
</properties>
</profile>
</system.web>
答案 0 :(得分:3)
添加配置文件时,您将其称为SqlProvider而不是SqlServices。 (您在上面使用的默认配置文件提供程序名称)
答案 1 :(得分:1)
我就是这样做的。也许你的情况有不同的方式。
VB - 新用户..(确实是IsAuthenticated的值)
Dim profile As ProfileCommon = ProfileCommon.Create(myUser.UserName, True)
profile.UserCustomContent = "customcontent"
VB - 现有用户......
Dim profile As ProfileCommon
profile = Profile.GetProfile(myUser.UserName)
profile.UserCustomContent = "customcontent"
C# - 新用户
ProfileCommon profile = (ProfileCommon) ProfileCommon.Create(myUser.UserName, true);
profile.UserCustomContent = "customcontent";
profile.Save();
C# - 现有用户
ProfileCommon profile;
profile = Profile.GetProfile(myUser.UserName);
profile.UserCustomContent = "customcontent";
profile.Save();
答案 2 :(得分:1)
如果您使用的是Web应用程序项目,则需要自己实现配置文件。配置文件仅与Web站点选项一起使用。 Web应用程序项目没有像Web站点项目那样自动添加到每个页面的Profile对象,因此我们无法获得对web.config文件中定义的配置文件属性的强类型编程访问。
因此,如果您使用的是Web应用程序项目,这应该会有所帮助:
http://code.msdn.microsoft.com/WebProfileBuilder
但是,如果您使用的是网站项目,那么Scott Guthrie的这篇文章应该引导您朝着正确的方向前进:
http://weblogs.asp.net/scottgu/archive/2005/10/18/427754.aspx
关于我自己的博客文章的更多细节:
http://www.codersbarn.com/post/2008/06/01/ASPNET-Web-Site-versus-Web-Application-Project.aspx
: - )