private static void ObtainMethodDetailsFromPopularNames(this MethodInfo method, ref RouteAttribute route, ref OnVerbAttribute verb) { string methodNameWithoutVerb = null; Verb detectedVerb = null; string methodName = method.Name; PopularNameMappings.SkipWhile(item => (methodNameWithoutVerb = Regex.Replace(methodName, "^" + item.Key + "((?=[A-Z0-9])|$)", ((detectedVerb = item.Value) != null ? String.Empty : String.Empty), RegexOptions.IgnoreCase)) == methodName).ToArray(); if ((route == null) && (methodNameWithoutVerb != null) && (methodNameWithoutVerb != methodName)) { route = new RouteAttribute((methodNameWithoutVerb.Length == 0 ? "/" : methodNameWithoutVerb).ToLower()); } if ((verb == null) && (methodNameWithoutVerb != null) && (methodNameWithoutVerb != methodName) && (detectedVerb != null)) { verb = new OnVerbAttribute(detectedVerb); } }
private static void ObtainMethodDetailsFromVerbs(this MethodInfo method, ref RouteAttribute route, ref OnVerbAttribute verb) { string methodNameWithoutVerb = null; Verb detectedVerb = null; string methodName = method.Name; Verb.Verbs.SkipWhile(item => (methodNameWithoutVerb = Regex.Replace(methodName, "^" + (detectedVerb = item).ToString(), String.Empty, RegexOptions.IgnoreCase)) == methodName).ToArray(); if ((route == null) && (methodNameWithoutVerb != null) && (methodNameWithoutVerb != methodName)) { route = new RouteAttribute((methodNameWithoutVerb.Length == 0 ? "/" : methodNameWithoutVerb).ToLower()); } if ((verb == null) && (methodNameWithoutVerb != null) && (methodNameWithoutVerb != methodName) && (detectedVerb != null)) { verb = new OnVerbAttribute(detectedVerb); } }