我可以使用Membership.GetUser()。UserName;来获取标签对象的登录用户句柄。但是在数据源控件对象的属性窗口中,对于select查询属性,我想将sql参数属性设置为登录的用户名。
我尝试了System.Web.Security.Membership.GetUser()。UserName,但无济于事。
坦率地说,我实际上并不确定如何在使用数据源控件时为参数设置值。这是在网页的标记中完成的,而不是c#编程代码,我觉得有点黑暗。
这是数据源对象。 params在那里,但我不知道如何实际使用它们
你可以看到我从上面提到的标签中取出了名字。显然,这不是一种方法,并且在尝试更新数据时根本没有帮助。 (这给了我另一个问题,它将更新每一行,但我可以处理一旦我可以实际更新。)
<asp:SqlDataSource
ID="SqlDataSource1"
runat="server"
ConnectionString="<%$ ConnectionStrings:Warren_SEINDATASYSTEMSConnectionString %>"
SelectCommand="SELECT [VisitorCode], [VisitorName] FROM [RegisteredVisitors] WHERE [ResidentName] = @ResidentName"
UpdateCommand="UPDATE [dbo].[RegisteredVisitors] SET [VisitorCode] = '3222' ,[VisitorName] = @VisitorName WHERE [ResidentName] = @ResidentName">
<SelectParameters>
<asp:ControlParameter ControlID="Label1" DefaultValue="none" Name="ResidentName" PropertyName="Text" />
</SelectParameters>
<UpdateParameters>
<asp:ControlParameter ControlID="Label1" Name="VisitorName" PropertyName="Text" />
<asp:ControlParameter ControlID="GridView1" Name="ResidentName" PropertyName="" />
</UpdateParameters>
</asp:SqlDataSource>