小编Kir*_*ill的帖子

CreateUserWizard - 添加步骤,但在完成所有步骤之前不要创建用户

我想利用ootb ASP.NET2.0 MembershipProvider CreateUserWizard控件,通过一些自定义来添加第二步.

问题是,如果我的第一步是类型<asp:CreateUserWizardStep...>而我的第二步是<asp:WizardStep...>,用户实际上是在用户从第一步点击之后并且在他们进入第二步之前立即创建的.

这是我正在使用的(非常)基本控件:

<asp:CreateUserWizard ID="CreateUserWizard1" runat="server">
   <WizardSteps>
      <asp:CreateUserWizardStep ID="CreateUserWizardStep1" runat="server">
      </asp:CreateUserWizardStep>
      <asp:WizardStep runat="server" Title="License Step">
      </asp:WizardStep>
      <asp:CompleteWizardStep ID="CompleteWizardStep1" runat="server">
      </asp:CompleteWizardStep>
   </WizardSteps>
</asp:CreateUserWizard>
Run Code Online (Sandbox Code Playgroud)

反正是否要告诉控件在创建用户之前等待所有步骤完成?

asp.net asp.net-membership createuserwizard

10
推荐指数
1
解决办法
4705
查看次数

如何使用Membership API与自己的应用程序相关数据相结合?

在asp.net 4中设计一个新的应用程序我必须决定如何在MS SQL数据库中使用MS SQL Membership API和我自己的数据.首先,我需要以更灵活的方式存储和访问用户配置文件数据,然后由Profile Provider支持.其次,我想链接其他用户相关信息(例如订单).

无论您在何处存储aspnetdb表(在单独的数据库中或与数据存储在同一数据库中),问题仍然存在于如何保持数据同步.

经过研究后,我看到了以下相关选项:
1.来自asp_Users的外键UserId(教程中提出).
2.没有外键 - 使用交易(这里建议).
3.没有外键 - 使用自定义的AccountController(无论它是什么,这里建议).
4.将Membership UserId(uid)与自定义UserId(int)相链接的附加表.
5. ...

一方面,我喜欢第一个解决方案,因为它非常简单,并在官方的asp.net教程中提出.

另一方面,反对者非常合理地注意到使用外键打破了提供者的一般想法,这些提供者应该帮助分离关注点并且可以互换.但不幸的是,他们并没有深入了解实施细节,因此从相关性和易于实施的角度来估算这些建议并不容易.

那么解决这个问题的最佳选择是什么?此外,实现将如何?仅仅使用额外的ADO.NET或LINQ等代码是否足够,还是值得实现自定义成员资格和/或配置文件提供程序?

先感谢您.

membership asp.net asp.net-membership sqlmembershipprovider membership-provider

8
推荐指数
1
解决办法
2399
查看次数

不允许从数据类型sql_variant到uniqueidentifier的隐式转换.使用CONVERT函数运行此查询

我正在使用Microsoft Visual Web Developer 2010 Express创建一个网站,我使用的是工具箱"createUserWizard".然后我把userIdfor "CustomerInfo"table放到了,"data type=uniqueidentifier"因为我需要将它链接到aspnet_表中的用户名.

后来,我需要将我的"Order"桌子连接到"CustomerInfo"桌子上,所以我放了我的桌子orderId data type=uniqueidentifier.然后,我计划将我的订单详细信息插入"Order"表中,但我遇到的问题是:

"不允许从数据类型sql_variant到uniqueidentifier的隐式转换.使用CONVERT函数运行此查询".

我搜索并找到一些答案,如参数设置为"空"的数据类型或删除它.但后来我有这个错误

"从字符串转换为uniqueidentifier时转换失败."

这是我的SQL

<asp:SqlDataSource ID="SqlDataSource1" runat="server" ConnectionString="<%$ ConnectionStrings:ConnectionString %>" 
                                    DeleteCommand="DELETE FROM [Order] WHERE [orderId] = @orderId" 
                                    InsertCommand="INSERT INTO [Order] ([orderId], [userId], [Services], [PickUpDate], [PickUpTime], [SpecialDate], [SpecialTime]) VALUES (@orderId, @userId, @Services, @PickUpDate, @PickUpTime, @SpecialDate, @SpecialTime)" 
                                    SelectCommand="SELECT * FROM [Order]" 

                                    UpdateCommand="UPDATE [Order] SET [userId] = @userId, [Services] = @Services, [PickUpDate] = @PickUpDate, [PickUpTime] = @PickUpTime, …
Run Code Online (Sandbox Code Playgroud)

sql-server asp.net

5
推荐指数
1
解决办法
2万
查看次数