本文整理汇总了C#中RouteValueDictionary.Has方法的典型用法代码示例。如果您正苦于以下问题:C# RouteValueDictionary.Has方法的具体用法?C# RouteValueDictionary.Has怎么用?C# RouteValueDictionary.Has使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类RouteValueDictionary
的用法示例。
在下文中一共展示了RouteValueDictionary.Has方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: BuildUrl
//.........这里部分代码省略.........
return null; // different value => no match
}
}
}
// We're a match, generate the URL
var ret = new StringBuilder ();
usedValues = new RouteValueDictionary ();
bool canTrim = true;
// Going in reverse order, so that we can trim without much ado
int tokensCount = tokens.Length - 1;
for (int i = tokensCount; i >= 0; i--) {
PatternToken token = tokens [i];
if (token == null) {
if (i < tokensCount && ret.Length > 0 && ret [0] != '/')
ret.Insert (0, '/');
continue;
}
if (token.Type == PatternTokenType.Literal) {
ret.Insert (0, token.Name);
continue;
}
string parameterName = token.Name;
object tokenValue;
#if SYSTEMCORE_DEP
if (userValues.GetValue (parameterName, out tokenValue)) {
if (tokenValue != null)
usedValues.Add (parameterName, tokenValue.ToString ());
if (!defaultValues.Has (parameterName, tokenValue)) {
canTrim = false;
if (tokenValue != null)
ret.Insert (0, tokenValue.ToString ());
continue;
}
if (!canTrim && tokenValue != null)
ret.Insert (0, tokenValue.ToString ());
continue;
}
if (defaultValues.GetValue (parameterName, out tokenValue)) {
object ambientTokenValue;
if (ambientValues.GetValue (parameterName, out ambientTokenValue))
tokenValue = ambientTokenValue;
if (!canTrim && tokenValue != null)
ret.Insert (0, tokenValue.ToString ());
usedValues.Add (parameterName, tokenValue.ToString ());
continue;
}
canTrim = false;
if (ambientValues.GetValue (parameterName, out tokenValue)) {
if (tokenValue != null)
{
ret.Insert (0, tokenValue.ToString ());
usedValues.Add (parameterName, tokenValue.ToString ());
}
continue;