我应该如何存储少量的事件数据,并在两个asp.net页面之间共享
本文关键字:两个 asp net 共享 之间 数据 存储 何存储 我应该 事件 | 更新日期: 2023-09-27 18:16:51
我是一名PHP开发人员,并被要求对Asp. js进行一些修改。网的网站。有一个硬编码表在一页,其中包含事件信息(日期,地点等)。该页面使用javascript根据事件是否已经发生来切换表行颜色。
我需要在另一个页面上添加一个块,该页面显示基于当前日期的2个即将到来的事件。在页面之间存储和共享事件数据的最简单方法是什么?没有可用的数据库,所以它需要一个本地文件或数组等。
我希望你能给我一些关于好的库/技术的建议。
创建一个代表Event
的小类,然后您可以将其存储在Session
状态:
public class EventInfo
{
//c# auto-implemented properties
public string Bla {get; set;}
public int Bla2 {get; set;}
}
//set on one page
var eventInfo = new EventInfo();
eventInfo.Bla = "bla";
eventInfo.Bla1 = 2;
Sesssion["eventinfo"] = eventInfoObject;
//get on another
var eventInfo = (EventInfo)Session["eventinfo"]; //add null checks etc
string bla = eventInfo.Bla;
int Bla2 = eventInfo.Bla2;
//************************************************//
//set multiple events in Session
List<EventInfo> events = new List<EventInfo>();
events.Add(new EventInfo{ Bla= "bla", Bla1 = 2});
events.Add(new EventInfo{ Bla= "bla2", Bla1 = 3});
Sesssion["eventCollection"] = events ;
//get
List<EventInfo> events = (List<EventInfo>)Session["eventCollection"]; //add null checks etc
foreach(EventInfo event in Events)
{
string bla = event.Bla;
int Bla2 = event.Bla2;
}
可以使用session。
Session["data"] = value;
您可以在会话中存储任何对象,并在检索时对其进行强制转换,例如
Session["data"] = 1;
和
int value = Session["data"] != null ? (int)Session["data"] : 0
之类的
最简单的方法是使用Session变量。