объявление сессионного словаря на главной странице - PullRequest
1 голос
/ 29 января 2011

Как вы объявляете словарь MyDic на главной странице?

Я хочу, чтобы MyDic содержал списки объектов MyObj с датой в качестве ключа, чтобы я мог написать что-то вроде этого: "получить списокна дату 28.01.2011 от MyDic "или" поместите этот список MyObj от 28.01.2011 в MyDic ".

Я хочу объявить словарь на главной странице, чтобы я мог получить доступэто на каждой странице.

Спасибо.

Ответы [ 3 ]

2 голосов
/ 29 января 2011

Как вы планировали сохранить список?Вместо того, чтобы создавать его на главной странице, вы можете создать его как переменную приложения или, если она зависит от пользователя, как переменную сеанса.В любом случае вы должны сделать что-то вроде:

Dictionary<DateTime, myObj> myList = new Dictionary<DateTime, myObj>();

Затем вы сохраните его где-нибудь:

Session["MyList"] = myList;

и когда вам потребуется снова получить к нему доступ:

Dictionary<DateTime, myObj> myList = (Dictionary<DateTime, myObj>)Session["MyList"];

Вы можете сделать объявление на главной странице при инициализации или при загрузке, или даже лучше, я бы предложил сделать это в файле global.asax для сессии или приложения

2 голосов
/ 29 января 2011

Вы можете создать публичное свойство на главной странице, а затем использовать его на страницах содержимого, установив директиву MasterType . например если у вас есть мастер-страница с именем MyMasterPage, то вот пример кода

/// declare it in Master Page
public Dictionary<DateTime, typeof(List<MyObj_Type>)> MyDic {
      get;
      set;
}

/// put the line just under Page directive on your content page where you want to access it

<%@ MasterType  virtualPath="~/MyMasterPage.master"%>

/// and then on content page you can access by
** Note: The intelisense may not work but don't worry just put the code in content page and it works.**

Master.MyDic.Add(DateTime.Now, MyObj);

Здесь подробно описано, как Доступ к участникам на главной странице

Хорошего дня !!!

0 голосов
/ 29 января 2011

Вы можете использовать переменную сеанса или приложения для этого вида совместного использования.

Этот сценарий в значительной степени подходит для того, для чего они были созданы.

...