2011-01-28 6 views
1

Имея много проблем, чтобы справиться с Kentico CMS, но я наконец-то сблизился. Я использую обычный движок портала и запускаю Kentico 5.5 RC2 при локальной установке.Kentico - Использование календаря для фильтрации событий системы бронирования

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

ответ

3

Существует несколько способов. Параметры

  • управления пользовательского пользователя
  • Пользовательские веб-части
  • Строка запроса

Легче будет последним. Или комбинация первых двух с последней. Добавьте свой контроль календаря с помощью вашего предпочтительного метода (календарь AJAX, календарь jQuery, < asp: Календарь > или все, что вам нравится) и заполнить его в текстовом поле. Затем запустите JavaScript, чтобы изменить строку запроса URL, которая перезагрузит страницу.

Перейти к свойствам веб-части ретранслятора Kentico. В поле Content filter->WHERE condition вы можете написать стандартное предложение SQL WHERE и ввести параметры строки запроса через специальный макрос: {?QUERYSTRINGPARAMETERNAME?}. Например, http://url/page?myfilter=2 будет {?myfilter?}. Это сделало бы статью WHERE примерно так: {?myfilter?} = '' OR {?myfilter?} = SqlFieldToCompare.

Kentico утверждает, что они избегают этого макроса для обеспечения безопасности, хотя я лично этого не подтвердил. Работы для нас.

Если вы пошли с пользовательским контролем пользователя или веб-частью, вы можете использовать более безопасные методы обратной передачи с помощью макроса управления (вместо макроса QueryString).

Для получения дополнительной информации о макросах см. Developer's Guide Appendix A Macros.

+0

Удивительный, который отвечает много. Только одна небольшая проблема, хотя для меня, я не знаю, как добавить vanilla asp.net на страницу вообще. Не могли бы вы указать мне в правильном направлении, чтобы выяснить, как добавить такие вещи, как текстовые поля или кнопки, пожалуйста? Также как сделать код на одной странице? (например, если я использую выше, мне нужно нажать на код C#, чтобы сказать textbox1.Text = calendar1.SelectedDate.ToShortDateString() и т. д.). Я думаю, что с этим я смогу двигаться дальше намного больше с Kentico. Не имея возможности манипулировать кодом .net и кодом, все очень сложно! –

+0

На самом деле, я теперь понял это (используя пользовательские веб-страницы). Теперь у меня другая проблема, я пытаюсь использовать макрос «WHERE», как вы уже указывали выше, но я не знаю, как добраться до полей из файла. Как получить доступ, например, к дате события? В преобразовании я использую <% # Eval ('EventDate')%>, и все в порядке, но не могу понять, как его использовать здесь. –

+0

Ничего! Выяснил это снова :). Спасибо за вашу помощь. –

 Смежные вопросы

  • Нет связанных вопросов^_^