context.MapRoute("authorized-credit-card", "owners/{ownerKey}/authorizedcreditcard/{action}",
new { controller = "authorizedcreditcard", action = "index" },
new { ownerKey = nameFormat }, dataTokens: new { scheme = Uri.UriSchemeHttps });
在我的路线文件,我有以上一种途径。
因此,可以在任何一个可以告诉我是什么意思dataTokens: new { scheme = Uri.UriSchemeHttps
?
和上面的使用dataTokens
控制器的操作方法里面?
根据文档 :
您可以使用DataTokens属性检索或分配与不用于确定路由是否一个URL模式匹配的路由相关的值。 这些值被传递给路由处理程序,在那里它们可被用于处理该请求。
所以DataTokens是一种可与路线传递的附加数据。 有3个DataToken的键在预定义的(类下面谈到ASP.NET MVC 4,但相同的键的形式的源代码版本2中使用):
internal class RouteDataTokenKeys
{
public const string UseNamespaceFallback = "UseNamespaceFallback";
public const string Namespaces = "Namespaces";
public const string Area = "area";
}
我不认为框架使用名为“方案” DataToken所以很难回答你的问题。 您可能需要搜索您的自定义应用程序代码DataTokens["scheme"]
看看,为什么它是必要的。
编辑:
我发现在“给ASP.NET MVC路由添加HTTPS / SSL支持”的文章 。 存在使用“方案”数据令牌的一例。 所以我敢肯定,你的应用程序使用它以非常相似的方式。