Asp.net 将C#变量传递到aspx源Sql查询
我正在尝试创建一个消息系统,其中收件箱是与用户ID关联的所有消息的网格视图。我在C#中有一个全局get方法来获取当前登录的用户。我想知道如何将其绑定,以便数据库只显示我希望它显示的数据 在我的.aspx.cs文件中,我有如下内容:Asp.net 将C#变量传递到aspx源Sql查询,asp.net,sql,gridview,Asp.net,Sql,Gridview,我正在尝试创建一个消息系统,其中收件箱是与用户ID关联的所有消息的网格视图。我在C#中有一个全局get方法来获取当前登录的用户。我想知道如何将其绑定,以便数据库只显示我希望它显示的数据 在我的.aspx.cs文件中,我有如下内容: protected void Page_Load(object sender, EventArgs e) { int userInSess = getLoggedInUser(); Session["user"]
protected void Page_Load(object sender, EventArgs e)
{
int userInSess = getLoggedInUser();
Session["user"] = user;
}
在源文件中,我有如下内容:
<asp:SqlDataSource ID="ProjectDB" runat="server"
ConnectionString="<%$ ConnectionStrings:ProjectConnectionString %>"
SelectCommand="SELECT [SentByUserName], [Subject], [CreateDate] FROM [Messages] WHERE (ReceivedByUserID = @user) ORDER BY [CreateDate] DESC">
<SelectParameters>
<asp:SessionParameter Name = "user" />
</SelectParameters>
</asp:SqlDataSource>
我知道这是错误的,但我似乎找不到明确的答案,如何确切地做到这一点。任何帮助都将不胜感激
谢谢您需要使用以下内容引用会话中存储的值:
<asp:SessionParameter Name="User" SessionField="user" />
注意添加了SessionField
属性
SqlDataSource控件仅使用参数对象的
Name=“User”
来匹配SQL查询中的@User占位符,将会话变量保留在一些局部变量中,然后使用局部变量从数据库中获得所需的结果?您需要使用
引用会话中的值注意添加的会话字段