.NET ASP - Замена и вывод страницы (пончик) кэширование - Как передать пользовательский аргумент делегату HttpResponseSubstitutionCallback

Я хотел бы использовать функцию замены кэширования пончика.

public static string GetTime(HttpContext context)
{
    return DateTime.Now.ToString("T");
}

...

The cached time is: <%= DateTime.Now.ToString("T") %>
<hr />
The substitution time is:
<% Response.WriteSubstitution(GetTime); %>

... Но я хотел бы передать дополнительный параметр функции обратного вызова около HttpContext.
таким образом, вопрос:
Как передать дополнительный аргумент обратному вызову GetTime?
например, что-то вроде этого:

public static string GetTime(HttpContext context, int newArgument)
{
    // i'd like to get sth from DB by newArgument
    // return data depending on the db values

    // ... this example is too simple for my usage
    if (newArgument == 1)
        return "";
    else
        return DateTime.Now.ToString("T");
}
5
задан zzare 28 March 2010 в 13:14
поделиться

2 ответа

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

2
ответ дан 15 December 2019 в 06:22
поделиться

Что ж, вы можете сохранить в сеансе любой аргумент, который вам нужен. В методе GetTime к этим аргументам можно получить доступ через HttpContext.

1
ответ дан 15 December 2019 в 06:22
поделиться
Другие вопросы по тегам:

Похожие вопросы: