static int CompareFrameworksByVersion (Framework fx1, Framework fx2)
		{
			if (fx1.MinimumVersion < fx2.MinimumVersion)
				return -1;
			
			if (fx1.MinimumVersion > fx2.MinimumVersion)
				return 1;
			
			if (fx1.MaximumVersion < fx2.MaximumVersion)
				return -1;
			
			if (fx1.MaximumVersion > fx2.MaximumVersion)
				return 1;
			
			return 0;
		}
Exemplo n.º 2
0
		internal static Framework Load (TargetFramework target, string path)
		{
			Framework fx = new Framework (target);
			
			using (var reader = XmlReader.Create (path)) {
				if (!reader.ReadToDescendant ("Framework"))
					throw new Exception ("Missing Framework element");
				
				if (!reader.HasAttributes)
					throw new Exception ("Framework element does not contain any attributes");
				
				while (reader.MoveToNextAttribute ()) {
					switch (reader.Name) {
					case "MaximumVersion":
						fx.MaximumVersion = ParseVersion (reader.Value, NoMaximumVersion);
						break;
					case "MinimumVersion":
						fx.MinimumVersion = ParseVersion (reader.Value, NoMinumumVersion);
						break;
					case "Profile":
						fx.Profile = reader.Value;
						break;
					case "Identifier":
						fx.Identifier = reader.Value;
						break;
					case "MinimumVersionDisplayName":
						fx.MinimumVersionDisplayName = reader.Value;
						break;
					case "DisplayName":
						fx.DisplayName = reader.Value;
						break;
					}
				}
			}
			
			return fx;
		}