1

我正在使用 DetailsView 仅显示我的数据库中符合我规定的 QueryString 值的标准的记录,并且等于当前的 User.Identity.Name 认证用户。

我已经做到了这一点,但我不知道我做错了什么,因为当我传递一个我知道是合乎逻辑的值并且在运行时满足上述查询字符串中的两个标准时,页面似乎仍然是空白的。

我将为您提供相关的片段,而不是发布完整的 DetailsView 代码:

SQL 选择命令:

SELECT * FROM [Events] WHERE ([EventID] = ?) AND (CreatedBy = @MemberName)

选择参数:

<SelectParameters>
        <asp:QueryStringParameter DefaultValue="1" Name="EventID" QueryStringField="ID" 
                Type="Int32" />
        <asp:parameter name="MemberName" type="String" />
        </SelectParameters>

最后是后面的代码,将 User.Identity.Name 与 MemberName 参数相关联:

Protected Sub SqlDataSource1_Selecting(sender As Object, e As SqlDataSourceSelectingEventArgs)
        e.Command.Parameters(1).Value = Me.User.Identity.Name
End Sub

这里可能出了什么问题?

4

0 回答 0