ASP.NET配置文件如何处理版本控制?我知道,因为数据是序列化的,这可能是一个问题,而不是表.
它会引发某种序列化错误吗?
示例:我将v1对象存储到配置文件.我使用新的v2版本更新我的Web应用程序,但数据库仍包含v1对象.
当我尝试将v1对象反序列化为v2对象时会发生什么?这个问题的最佳解决方案是什么?
我正在使用ASP.NET MVC 1,并且我使用WebProfile Builder VS加载项添加了一个自定义Profile类(可在此处找到:http://code.msdn.microsoft.com/WebProfileBuilder/Release/ProjectReleases.aspx?ReleaseId = 980).
在我的一个表单上,我想要一个共享特定配置文件值的所有用户的下拉列表.
我可以看到我可以使用以下命令获取所有用户的列表:
Membership.GetAllUsers()
Run Code Online (Sandbox Code Playgroud)
但是,我无法看到如何获得具有特定配置文件值的所有用户,在我的例子中是CellId.
我是以正确的方式接近这个吗?我使用成员资格角色来定义哪些用户是管理员等,但是配置文件似乎是分组用户的正确位置.
任何关于如何访问用户列表的细节以及关于我是否在这里寻求正确途径的评论都将非常感激.
非常感谢,Sam
我有Asp.net的个人资料属性Profile.Location,性别等
我需要获取其位置属于"伦敦"和性别=男性的所有用户的列表
如何使用LINQ在Asp.net Profile上执行搜索
任何想法如何使用SQL基于UserID从aspnet_profile表中获取用户FirstName和LastName因为我想在Telerik Reporting中用作用户参数.
示例行(FirstName是George,LastName是Test):
UserID: 06b24b5c-9aa1-426e-b7e4-0771c5f85e85
PropertyName: MobilePhone:S:0:0:Initials:S:0:1:City:S:1:14:FirstName:S:15:6:PostalCode:S:21:7:??WorkPhone:S:28:12:LastName:S:40:5:Address1:S:45:17:Address2:S:62:0:Province:S:62:??2:Organization:S:64:4:ClinicId:S:68:1:Country:S:69:6:Fax:S:75:0:MSPNumber:S:75:0:??
PropertyValuesString: HEast HustonEASGeorgeT7D 1N8604-111-2222Test5555 Beddtvue AveDCHCNL2Canada
PropertyValuesBinary: <Binary data>
LastUpdateDate: 2010-01-02 22:22:03.947
Run Code Online (Sandbox Code Playgroud) 当userA上传文件时,他的文件将被上传到folderA,当用户B,到文件夹B,依此类推.ASP.NET中的角色/配置文件.文件夹将预先存在.任何人?
我认为PropertyValuesString用于通常是这些类型对象的Key-Value对的值部分.但是,如果你已经将值放入PropertyValuesString,那么PropertyValuesBinary字段会在哪里出现?
这两个字段都是不可为空的,所以我需要在每个字段中添加一些东西.这两者之间有什么区别,我应该把它们放在哪里?
另外,我想知道为什么它的复数 - PropertyValue s - 对整个键值对没有真正意义,我认为一个属性应该有一个值.
我有一个MVC3站点,我正在编写代码来注册用户.代码执行此操作:
MembershipCreateStatus createStatus;
Membership.CreateUser(model.UserName, model.Password, model.Email, null, null, true, null, out createStatus);
Run Code Online (Sandbox Code Playgroud)
它接下来要做的是:
HttpContext.Profile["FirstNAme"] = model.FirstName;
HttpContext.Profile["LastName"] = model.LastName;
Run Code Online (Sandbox Code Playgroud)
这是它失败的地方.我得到的错误是:
无法为匿名用户设置此属性.
我理解为什么; 这是因为没有用户登录或没有指定用户,所以当然我无法为用户设置配置文件.我正在从Pro ASP.NET MVC 3 Framework的第754页开始工作,这是我从中获取此代码的地方.我已经在web.config文件中设置了它.
<profile enabled="true" defaultProvider="AspNetSqlProfileProvider">
<providers>
<clear/>
<add name="AspNetSqlProfileProvider" type="System.Web.Profile.SqlProfileProvider" connectionStringName="ApplicationServices" applicationName="/" />
</providers>
<properties>
<add name="FirstName" type="String"/>
<add name="LastName" type="String"/>
</properties>
</profile>
Run Code Online (Sandbox Code Playgroud)
我的问题是如何设置我要注册的用户的名字和姓氏?
我使用visual studio 2010在asp.net上创建了一个带有购物车的网站.我的问题是关于Profile变量和Login Control.
我按照一个非常简单的教程向我的网站添加了一个购物车.
正如您在购物车教程中看到的那样,作者使用配置文件来跟踪购物车.
当我这样做的时候,我曾期望购物车与每个不同的用户登录保持一致,因为我们使用的是个人资料而不是会话变量.幸运的是,当我使用登录控件以不同用户身份登录时,购物车实际上会重置.
所以我的问题是,Profile如何跟踪每个用户的购物车.我几乎可以肯定登录控件没有设置会话变量,所以我认为Profile对象不会自动检测登录控件中的其他用户......是吗?
请帮我理解一下,作者不太清楚.
非常感谢!
我的web.conf文件如下:
<connectionStrings>
<add name="PaDBCon" connectionString="Data Source=(LocalDb)\v11.0;Integrated Security=SSPI;AttachDBFilename=|DataDirectory|Pa.mdf" providerName="System.Data.SqlClient" />
</connectionStrings>
...
<profile>
<providers>
<clear />
<add name="ProfilesProvider"
type="System.Web.Profile.SqlProfileProvider"
connectionStringName="PaDBCon"
applicationName="PaWeb" />
</providers>
<properties>
<add name="FirstName" type="String"/>
<add name="LastName" type="String"/>
<add name="Site" type="String"/>
</properties>
</profile>
Run Code Online (Sandbox Code Playgroud)
但是我收到错误'找不到配置文件默认提供程序.' 如果我拿出提供者部分它创建一个aspnetdb.mdf,它不会在visual studio中打开,但我希望提供者与我的用户和角色一起存储在我的Pa.mdf数据库中.有关如何将配置文件保存在与用户帐户和角色相同的数据库中的任何想法?
编辑:使用时
<providers>
<clear />
<add name="ProfilesProvider"
type="System.Web.Providers.DefaultProfileProvider"
connectionStringName="PamperDBCon"
applicationName="PamperWeb" />
</providers>
Run Code Online (Sandbox Code Playgroud)
我收到错误 - 无法加载类型'System.Web.Providers.DefaultProfileProvider'.
编辑:作为下面的优秀答案的补充.此链接有助于添加更多说明.帮助澄清了我剩下的问题.