我有一个普通的asp.net网页表单页面(.aspx),其中包含一个地图,当你点击一个链接"添加标记"时,它会点击一些加载/显示弹出对话框的JQuery( .ascx)在页面顶部。
在此对话框中,我然后提示添加名称,坐标等。一旦我在.ascx.cs(c#文件)中点击"提交",它就会创建给定您输入的数据的新MapLocation对象。
然而,我当时需要做的是,以某种方式将新创建的MapLocation对象(在.ascx中创建)传递回网页(.aspx),以便我可以将它添加到List中页面(aspx.cs)。然后,我可以通过对话框不断添加新位置,并将它们统计在页面中。
我希望这很简单而且我很蠢,因为我过去两天都在拔头发 - 我每次提交一个位置时都不想打到数据库是我唯一的另一种选择。
以下是所涉及页面的代码结构,如果它有所不同:
-map
-webform.aspx
-controls
-popup.ascx
感谢您的帮助! FYP
答案 0 :(得分:1)
从我的角度来看,MapLocation对象应存储在System.Web.SessionState.HttpSessionState键中,并在会话请求来自ASPX页面时进行测试。
[ASCX.cs]
MapLocation user = new MapLocation();
// MapLocation property settings goes here
// Store MapLocation object on Session
Session["YourSession"] = user;
[ASPX.cs]
MapLocation location = Session["YourSession"] as MapLocation;
// create a list based on the object
List<MapLocation> list = new List<MapLocation>();
list.Add(location);
希望这对你有用。