存储全局数据表的最佳方法是什么,以便访问我网站的任何人都可以阅读并添加到同一个表中?
我正在考虑使用以下代码:
Shared DT As New DataTable
Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
DT.Columns.Add("col1", GetType(String))
DT.Columns.Add("col1", GetType(String))
End Sub
但每次加载页面时都会添加新列....
运行SQL数据库对于我编码的网站而言会变慢。
答案 0 :(得分:3)
使用
会话:如果数据用于单个或当前用户
ViewState :您还可以使用ViewStates存储数据
对于所有用户,您也可以使用
应用程序:它在整个应用程序生命周期内存储数据
作为@Mike Brind给出的示例,您可以以相同的方式使用这些会话和应用程序
基本区别在于会话保存当前用户的数据,其中应用程序保存所有用户的数据。
和会话
Session["table"] = dt;
DataTable dt = (DataTable) Sessions["table"];
答案 1 :(得分:1)
如果数据是全局数据,则可以将其存储在Application变量中。
Application["table"] = dt;
你必须把它丢回去检索它:
var dt = (DataTable)Application["table"];