本文整理汇总了C#中System.Web.HttpContext.GetPathData方法的典型用法代码示例。如果您正苦于以下问题:C# HttpContext.GetPathData方法的具体用法?C# HttpContext.GetPathData怎么用?C# HttpContext.GetPathData使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类System.Web.HttpContext
的用法示例。
在下文中一共展示了HttpContext.GetPathData方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: GetHandlerMapping
private HttpHandlerAction GetHandlerMapping(HttpContext context, String requestType, VirtualPath path, bool useAppConfig) {
CachedPathData pathData = null;
HandlerMappingMemo memo = null;
HttpHandlerAction mapping = null;
// Check if cached handler could be used
if (!useAppConfig) {
// Grab mapping from cache - verify that the verb matches exactly
pathData = context.GetPathData(path);
memo = pathData.CachedHandler;
// Invalidate cache on missmatch
if (memo != null && !memo.IsMatch(requestType, path)) {
memo = null;
}
}
// Get new mapping
if (memo == null) {
// Load from config
HttpHandlersSection map = useAppConfig ? RuntimeConfig.GetAppConfig().HttpHandlers
: RuntimeConfig.GetConfig(context).HttpHandlers;
mapping = map.FindMapping(requestType, path);
// Add cache entry
if (!useAppConfig) {
memo = new HandlerMappingMemo(mapping, requestType, path);
pathData.CachedHandler = memo;
}
}
else {
// Get mapping from the cache
mapping = memo.Mapping;
}
return mapping;
}
示例2: GetHandlerMapping
private HttpHandlerAction GetHandlerMapping(HttpContext context, string requestType, VirtualPath path, bool useAppConfig)
{
CachedPathData pathData = null;
HandlerMappingMemo cachedHandler = null;
HttpHandlerAction mapping = null;
if (!useAppConfig)
{
pathData = context.GetPathData(path);
cachedHandler = pathData.CachedHandler;
if ((cachedHandler != null) && !cachedHandler.IsMatch(requestType, path))
{
cachedHandler = null;
}
}
if (cachedHandler == null)
{
mapping = (useAppConfig ? RuntimeConfig.GetAppConfig().HttpHandlers : RuntimeConfig.GetConfig(context).HttpHandlers).FindMapping(requestType, path);
if (!useAppConfig)
{
cachedHandler = new HandlerMappingMemo(mapping, requestType, path);
pathData.CachedHandler = cachedHandler;
}
return mapping;
}
return cachedHandler.Mapping;
}