CCNet.ProjectChecker.Program.CheckWrongCommonProperties C# (CSharp) Метод

CheckWrongCommonProperties() приватный Метод

private CheckWrongCommonProperties ( ) : void
Результат void
		private static void CheckWrongCommonProperties()
		{
			Dictionary<string, string> properties = ProjectHelper.GetCommonProperties();
			Dictionary<string, string> required = new Dictionary<string, string>();
			Dictionary<string, string> allowed = new Dictionary<string, string>();

			allowed.Add("AppDesignerFolder", "Properties");

			switch (Arguments.ProjectType)
			{
				case ProjectType.ClickOnce:
					required.Add("ApplicationIcon", null);
					break;
				case ProjectType.SystemTool:
					allowed.Add("ApplicationIcon", null);
					break;
				default:
					allowed.Add("ApplicationIcon", String.Empty);
					break;
			}

			required.Add("AssemblyName", Arguments.AssemblyName);
			allowed.Add("AssemblyKeyContainerName", String.Empty);
			allowed.Add("AssemblyOriginatorKeyFile", String.Empty);
			allowed.Add("CodeContractsAssemblyMode", null);
			allowed.Add("Configuration", null);
			allowed.Add("DefaultClientScript", null);
			allowed.Add("DefaultHTMLPageLayout", null);
			allowed.Add("DefaultTargetSchema", null);
			allowed.Add("DelaySign", "false");
			allowed.Add("FileAlignment", "512");
			allowed.Add("FileUpgradeFlags", null);
			allowed.Add("IISExpressSSLPort", null);
			allowed.Add("IISExpressAnonymousAuthentication", null);
			allowed.Add("IISExpressWindowsAuthentication", null);
			allowed.Add("IISExpressUseClassicPipelineMode", null);
			allowed.Add("GenerateResourceNeverLockTypeAssemblies", "true");
			allowed.Add("MvcBuildViews", null);
			allowed.Add("Nonshipping", null);
			allowed.Add("OldToolsVersion", null);

			switch (Arguments.ProjectType)
			{
				case ProjectType.ClickOnce:
				case ProjectType.SystemTool:
					required.Add("OutputType", "WinExe");
					break;
				case ProjectType.Console:
				case ProjectType.WindowsService:
					required.Add("OutputType", "Exe");
					break;
				case ProjectType.WebService:
				case ProjectType.WebSite:
				case ProjectType.Library:
				case ProjectType.Test:
				case ProjectType.Azure:
					required.Add("OutputType", "Library");
					break;
			}

			allowed.Add("Platform", null);
			allowed.Add("PlatformTarget", Arguments.TargetPlatform);

			if (Arguments.ProjectName == "CC.PresentationEngine")
			{
				allowed.Add("PostBuildEvent", null);
			}
			else
			{
				allowed.Add("PostBuildEvent", String.Empty);
			}

			allowed.Add("PreBuildEvent", String.Empty);
			allowed.Add("ProductVersion", null);
			allowed.Add("ProjectGuid", null);
			allowed.Add("ProjectType", "Local");
			allowed.Add("ProjectTypeGuids", null);
			allowed.Add("PublishWizardCompleted", null);
			allowed.Add("RoleType", null);
			required.Add("RootNamespace", Arguments.RootNamespace);
			allowed.Add("RunPostBuildEvent", "OnBuildSuccess");
			required.Add("SccAuxPath", "SAK");
			required.Add("SccLocalPath", "SAK");
			required.Add("SccProjectName", "SAK");
			required.Add("SccProvider", "SAK");
			allowed.Add("SchemaVersion", null);
			allowed.Add("SignAssembly", "false");

			switch (Arguments.ProjectType)
			{
				case ProjectType.ClickOnce:
					required.Add("ApplicationManifest", @"Properties\App.manifest");
					required.Add("ApplicationRevision", "0");
					required.Add("ApplicationVersion", "1.0.0.0");
					required.Add("BootstrapperEnabled", "false");
					required.Add("GenerateManifests", "false");
					required.Add("Install", "true");
					required.Add("InstallFrom", "Web");
					required.Add("InstallUrl", "http://download.cnetcontentsolutions.com/{0}/{1}/".Display(Arguments.DownloadZone, Arguments.AssemblyName));
					required.Add("IsWebBootstrapper", "true");
					required.Add("ManifestCertificateThumbprint", "2D5370C222834CBC2CE6F6FE388A29CF75B598D4");
					required.Add("ManifestKeyFile", "SignCode2014.pfx");
					required.Add("ManifestTimestampUrl", "http://timestamp.comodoca.com/authenticode");
					required.Add("MapFileExtensions", "true");
					required.Add("MinimumRequiredVersion", "1.0.0.0");
					required.Add("ProductName", Arguments.FriendlyName);
					required.Add("PublisherName", "CNET Content Solutions");
					required.Add("PublishUrl", @"D:\publish\{0}\".Display(Arguments.AssemblyName));
					required.Add("SignManifests", "true");
					required.Add("UpdateEnabled", "true");
					allowed.Add("UpdateInterval", null);
					allowed.Add("UpdateIntervalUnits", null);
					required.Add("UpdateMode", "Foreground");
					required.Add("UpdatePeriodically", "false");
					required.Add("UpdateRequired", "true");
					required.Add("UseApplicationTrust", "false");
					break;
				default:
					allowed.Add("ApplicationRevision", "0");
					allowed.Add("ApplicationVersion", "1.0.0.%2a");
					allowed.Add("BootstrapperEnabled", "true");
					allowed.Add("Install", "true");
					allowed.Add("InstallFrom", "Disk");
					allowed.Add("IsWebBootstrapper", "false");
					allowed.Add("PublishUrl", @"publish\");
					allowed.Add("GenerateManifests", "false");
					allowed.Add("MapFileExtensions", "true");
					allowed.Add("SignManifests", "true");
					allowed.Add("UpdateEnabled", "false");
					allowed.Add("UpdateInterval", null);
					allowed.Add("UpdateIntervalUnits", null);
					allowed.Add("UpdateMode", "Foreground");
					allowed.Add("UpdatePeriodically", "false");
					allowed.Add("UpdateRequired", "false");
					allowed.Add("UseApplicationTrust", "false");
					allowed.Add("JSLintSkip", null);
					break;
			}

			if (Arguments.ProjectType == ProjectType.Azure)
			{
				allowed.Add("CloudExtensionsDir", null);
				required.Add("Name", Arguments.ProjectName);
				allowed.Add("StartDevelopmentStorage", null);
			}

			allowed.Add("SilverlightApplicationList", null);
			allowed.Add("StartupObject", String.Empty);
			allowed.Add("TargetFrameworkProfile", null);

			switch (Arguments.TargetFramework)
			{
				case TargetFramework.Net20:
					allowed.Add("TargetFrameworkVersion", "v2.0");
					break;
				case TargetFramework.Net35:
					required.Add("TargetFrameworkVersion", "v3.5");
					break;
				case TargetFramework.Net40:
					required.Add("TargetFrameworkVersion", "v4.0");
					break;
				case TargetFramework.Net45:
					required.Add("TargetFrameworkVersion", "v4.5");
					break;
			}

			allowed.Add("TargetZone", null);
			allowed.Add("UpgradeBackupLocation", null);
			allowed.Add("UseIISExpress", null);
			allowed.Add("UseIISExpressByDefault", null);
			allowed.Add("VisualStudioVersion", "10.0");
			allowed.Add("VSToolsPath", null);
			allowed.Add("Win32Resource", String.Empty);
			allowed.Add("WebReference_EnableLegacyEventingModel", null);
			allowed.Add("WebReference_EnableProperties", null);
			allowed.Add("WebReference_EnableSQLTypes", null);
			allowed.Add("MvcProjectUpgradeChecked", null);

			string description;
			if (ValidationHelper.CheckProperties(
				properties,
				required,
				allowed,
				out description))
				return;

			RaiseError.WrongCommonProperties(description);
		}