/// <summary> /// Checks if url is the same as the base url /// </summary> /// <param name="uriBase">Base Uri</param> /// <param name="uri">url to check</param> /// <returns>Returns true if url is not same as base url, else false</returns> public static bool IsHostMatch(this Uri uriBase, Uri uri) { AspectF.Define. NotNull(uriBase, "uriBase"); if (uri.IsNull()) { return false; } return !uriBase.Host.Equals(uri.Host, StringComparison.OrdinalIgnoreCase); }
// From client to server internal string ToRequestString(Uri uri) { if (name.IsEmpty ()) return String.Empty; if (version == 0) return String.Format ("{0}={1}", name, val); var result = new StringBuilder (64); result.AppendFormat ("$Version={0}; {1}={2}", version, name, val); if (!path.IsNullOrEmpty ()) result.AppendFormat ("; $Path={0}", path); else if (!uri.IsNull ()) result.AppendFormat ("; $Path={0}", uri.GetAbsolutePath ()); else result.Append ("; $Path=/"); bool append_domain = uri.IsNull () || uri.Host != domain; if (append_domain && !domain.IsNullOrEmpty ()) result.AppendFormat ("; $Domain={0}", domain); if (!port.IsNullOrEmpty ()) if (port == "\"\"") result.Append ("; $Port"); else result.AppendFormat ("; $Port={0}", port); return result.ToString (); }
// From client to server internal string ToString(Uri uri) { if (name.IsEmpty ()) return String.Empty; var result = new StringBuilder (64); if (version > 0) result.Append ("$Version=").Append (version).Append ("; "); result.Append (name).Append ("=").Append (val); if (version == 0) return result.ToString (); if (!path.IsNullOrEmpty ()) result.Append ("; $Path=").Append (path); else if (!uri.IsNull ()) result.Append ("; $Path=").Append (uri.GetAbsolutePath ()); else result.Append ("; $Path=/"); bool append_domain = uri.IsNull () || uri.Host != domain; if (append_domain && !domain.IsNullOrEmpty ()) result.Append ("; $Domain=").Append (domain); if (!port.IsNullOrEmpty ()) result.Append ("; $Port=").Append (port); return result.ToString (); }