在LINQ语句的where子句中使用会话变量

时间:2010-02-03 09:22:29

标签: linq gridview datasource

下午好。

我有一个页面,根据用户为单选按钮列表中的素材选择的内容以及他们希望看到的内容,文本框,在gridview中显示数据。

登录此页面后,将创建MemberID的会话变量,即MemberKey。

我想要做的是将此会话变量传递给LINQ语句,以便只有已登录的特定成员才能看到他们的数据:

        ContextTypeName="VDSWeightsReportingService.CompleteWeightsDataContext" EnableInsert="True" 
            EnableUpdate="True" TableName="tblOnlineReportingCOMPLETEWEIGHTSFINALDEMOs" 

        Where="MaterialText == @MaterialText && Productpriority <= @Productpriority && MemberId == @MemberId">
            <WhereParameters>
                <asp:ControlParameter ControlID="radMaterial" Name="MaterialText" 
                    PropertyName="SelectedValue" Type="String" />
                <asp:ControlParameter ControlID="tbxHowMany" Name="Productpriority" 
                    PropertyName="Text" Type="Int32" />
               <asp:SessionParameter Name="MemberId" SessionField="MemberKey" 
                    Type="String" />
            </WhereParameters>
        </asp:LinqDataSource>

我试图像上面那样插入会话变量但是没有LINQ似乎不再经历这些动作。

有人能指出我哪里出错了吗?

如果这不起作用,或者不可行,有人可以建议解决这个问题吗?即在LINQ where子句中使用此会话变量。

1 个答案:

答案 0 :(得分:0)

确保选择正确的会话变量!!!!