Я хотел бы использовать функцию замены кэширования пончика.
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");
}
В противном случае, если ваша проблема в том, что вы хотите иметь разные выходные данные на основе разных аргументов, потому что вы используете подстановку выходных данных в разных местах на своем веб-сайте, я боюсь, что единственный способ - либо для определения различных функций, либо для использования только методов подстановки в качестве заглушки для фактического метода с аргументами.
Что ж, вы можете сохранить в сеансе любой аргумент, который вам нужен. В методе GetTime к этим аргументам можно получить доступ через HttpContext.