System.UriTemplate.BindByPosition 方法
方法描述
利用模板和参数值数组创建一个新的 URI。
语法定义(C# System.UriTemplate.BindByPosition 方法 的用法)
public Uri BindByPosition( Uri baseAddress, params string[] values )
参数/返回值
参数值/返回值 | 参数类型/返回类型 | 参数描述/返回描述 |
---|---|---|
baseAddress | System-Uri | 一个包含基址的 Uri。 |
values | System-String[] | 参数值。 |
返回值 | System.Uri | 新 Uri 实例。 |
提示和注释
参数值按位置从左至右绑定。第一个参数值会替换在模板中找到的第一个变量,第二个参数值会替换第二个变量,依此类推。传递给此方法的变量都会经过转义。
注意
传入值参数的参数个数必须与模板中的变量个数相符。如果不符,则会引发 FormatException。
注意
您可以在参数值数组中传入文本,以阻止生成的 URI 与用于生成它的模板匹配。此类文本包括“/”、“.”、“..”、“*”、“{”和“}”等。下面的代码对此进行了演示。
UriTemplate template = new UriTemplate("far/{bat}/baz");
Uri uri = new Uri("http://localhost/Base");
Uri result = template.BindByPosition(uri, "."); // returns Base/form/baz
Uri result = template.BindByPosition(uri, ".."); // returns Base/baz
Uri result = template.BindByPosition(uri, "x/y"); // returns Base/form/x/y/baz
Uri result = template.BindByPosition(uri, "{x}"); // returns Base/form/{x}/baz
Uri result = template.BindByPosition(uri, "*"); // returns Base/form/*/baz
System.UriTemplate.BindByPosition 方法例子
下面的示例演示如何调用 BindByPosition(Uri, String[])。
UriTemplate template = new UriTemplate("weather/{state}/{city}?forecast={day}"); Uri prefix = new Uri("http://localhost"); Uri positionalUri = template.BindByPosition(prefix, "Washington", "Redmond", "Today");
版本信息
.NET Framework 受以下版本支持:4、3.5 .NET Framework Client Profile 受以下版本支持:4、3.5 SP1
适用平台
Windows 7, Windows Vista SP1 或更高版本, Windows XP SP3, Windows Server 2008(不支持服务器核心), Windows Server 2008 R2(支持 SP1 或更高版本的服务器核心), Windows Server 2003 SP2 .NET Framework 并不是对每个平台的所有版本都提供支持。有关支持的版本的列表,请参见.NET Framework 系统要求。