在应用程序ASP C#隐藏字段中传递变量

在应用程序ASP C#隐藏字段中传递变量,c#,asp.net,C#,Asp.net,我有一个变量需要在应用程序的不同部分使用。我想知道存储变量、更改变量并在需要时访问它的最佳方式是什么 将其存储在隐藏字段中是个坏主意吗? 在代码隐藏文件中为应用程序创建页面级变量是更好的选择吗 一些我需要的背景。该应用程序首先为用户提供一个选项,可以创建一个主题,也可以从下拉列表中打开一个主题。一旦打开,用户应该能够向该主题添加项目(存储在数据库中)、删除项目、添加评论等 我的问题是将主题id从代码隐藏(生成它的地方)获取到前端,以便在单击按钮时我知道哪个主题处于活动状态 隐藏字段中的值可以由用

我有一个变量需要在应用程序的不同部分使用。我想知道存储变量、更改变量并在需要时访问它的最佳方式是什么

将其存储在隐藏字段中是个坏主意吗? 在代码隐藏文件中为应用程序创建页面级变量是更好的选择吗

一些我需要的背景。该应用程序首先为用户提供一个选项,可以创建一个主题,也可以从下拉列表中打开一个主题。一旦打开,用户应该能够向该主题添加项目(存储在数据库中)、删除项目、添加评论等


我的问题是将主题id从代码隐藏(生成它的地方)获取到前端,以便在单击按钮时我知道哪个主题处于活动状态

隐藏字段中的值可以由用户更改,我将使用一个会话变量,可以从每个控制器访问

var topicId = Session("TopicId");

隐藏字段中的值可以由用户更改,我将使用一个会话变量,可以从每个控制器访问

var topicId = Session("TopicId");

隐藏字段没有问题,它符合web的无状态意图。为什么不在每次用户登录(只需访问您的站点)时将其存储在会话中并始终使用它?@Crowcoder隐藏字段的使用不是一个安全漏洞?它的安全性不亚于任何表单字段,除非你的意思是从用户的角度来看,你试图隐藏一些东西。但是你不能对技术娴熟的用户隐瞒任何事情。没错,听起来不错。我认为在这种情况下,会话可能是最好的选择,因为我不必一直读写ID的更新到客户端。隐藏字段没有问题,它符合web的无状态意图。为什么不在每次用户登录时将其存储在会话中(只需访问您的站点)并且始终使用它?@Crowcoder使用隐藏字段不是安全漏洞吗?它的安全性不亚于任何表单字段,除非您是从用户角度来看,并且您试图隐藏某些内容。但是你不能对技术娴熟的用户隐瞒任何事情。没错,听起来不错。我认为在这种情况下,会话可能是最好的选择,因为我不必一直读写对客户端ID的更新。