Request.Url.IsDefaultPort是如何确定的?
How is Request.Url.IsDefaultPort determined?
我希望这是一个简单的问题,但我似乎无法全神贯注。很明白这行代码是怎么确定的:
Request.Url.IsDefaultPort
通常情况下是这样的:
Request.Url.IsDefaultPort ? "" : ":" + Request.Url.Port
我的问题涉及的内容比较多:
- 如果我的 url 是:http://www.mysitename.com 并且 IIS 为此使用端口 80,这是否成立
- 如果我的 url 是:http://www.mysitename.com:12345 并且 IIS 为此使用端口 12345,这是否成立
- 这等同于说:Request.Url.Port == 80 吗? "" : ":" + Request.Url.Port?
我确实检查了 Microsoft 的 MSDN article,它往往不太有用。这是关于如何确定 属性 的引用: "A Boolean value that is true if the value in the Port property is the default port for this scheme; otherwise, false." 不幸的是,我不知道 'scheme'.
这个词是什么意思
预先感谢您的帮助。
如果端口是方案 的默认端口,则这是true
。例如,HTTP 作为方案 (http:
) 使用端口 80。HTTPS 作为方案 (https:
) 使用端口 443。
Uri.IsDefaultPort
属性 仅检查端口值是否等于方案的默认值,而不是 IIS 中的绑定。
- 是的,对于 http://www.mysitename.com,在端口 80
上也是如此
- 不,端口 12345
上的 http://www.mysitename.com:12345 为 false
- 不完全是,您的示例是正确的,如果您使用
http
方案检查 URI:Request.Url.Port == 80 // this is false for HTTPS, as an example.
您可以使用 Uri.Scheme
属性 检查 sheme(Request.Url
是 Uri
的一个实例)。
我希望这是一个简单的问题,但我似乎无法全神贯注。很明白这行代码是怎么确定的:
Request.Url.IsDefaultPort
通常情况下是这样的:
Request.Url.IsDefaultPort ? "" : ":" + Request.Url.Port
我的问题涉及的内容比较多:
- 如果我的 url 是:http://www.mysitename.com 并且 IIS 为此使用端口 80,这是否成立
- 如果我的 url 是:http://www.mysitename.com:12345 并且 IIS 为此使用端口 12345,这是否成立
- 这等同于说:Request.Url.Port == 80 吗? "" : ":" + Request.Url.Port?
我确实检查了 Microsoft 的 MSDN article,它往往不太有用。这是关于如何确定 属性 的引用: "A Boolean value that is true if the value in the Port property is the default port for this scheme; otherwise, false." 不幸的是,我不知道 'scheme'.
这个词是什么意思预先感谢您的帮助。
如果端口是方案 的默认端口,则这是true
。例如,HTTP 作为方案 (http:
) 使用端口 80。HTTPS 作为方案 (https:
) 使用端口 443。
Uri.IsDefaultPort
属性 仅检查端口值是否等于方案的默认值,而不是 IIS 中的绑定。
- 是的,对于 http://www.mysitename.com,在端口 80 上也是如此
- 不,端口 12345 上的 http://www.mysitename.com:12345 为 false
- 不完全是,您的示例是正确的,如果您使用
http
方案检查 URI:Request.Url.Port == 80 // this is false for HTTPS, as an example.
您可以使用 Uri.Scheme
属性 检查 sheme(Request.Url
是 Uri
的一个实例)。