public FormAttribute(string name = null, VersionOption isFor = VersionOption.All, VersionOption isRequiredFor = VersionOption.None, bool addKeyOnlyIfBoolTrue = false) { AddKeyOnlyIfBoolTrue = addKeyOnlyIfBoolTrue; IsFor = isFor; IsRequiredFor = isRequiredFor; Name = name; }
/// <summary>Create a query for content items with the option of including versions.</summary> /// <typeparam name="T">The type of content item to query for.</typeparam> /// <param name="engine">The engine onto which the extension method is attached.</param> /// <param name="versions">Wheter to include or exclude versions.</param> /// <returns>A query that can be extended.</returns> public static IQueryable <T> QueryItems <T>(this IEngine engine, VersionOption versions) where T : ContentItem { var q = engine.Query <T>(); if (versions == N2.Persistence.Finder.VersionOption.Exclude) { q = q.Where(i => i.VersionOf == null); } return(q); }
/// <summary> /// 获得构建版本 /// </summary> /// <param name="versionOption"></param> /// <param name="customizeVersion"></param> /// <param name="buildTarget"></param> /// <returns></returns> public static AppVersion GetBuildVersion(VersionOption versionOption, AppVersion customizeVersion, BuildTarget buildTarget) { AppVersion lastBuildVersion = GetLastBuildVersion(buildTarget); AppVersion newVersion = lastBuildVersion; switch (versionOption) { case VersionOption.PromotePatch: { if (lastBuildVersion == AppVersion.InitVersion) { Debug.Log("try check is first version build"); // 是否是第一个版本,如果是就不增加补丁位。为了处理第一次打包 string dir = PlatformEditorUtils.GetBuildToolVersionPatchDir(buildTarget, AppVersion.InitVersion); if (!Directory.Exists(dir) || Directory.GetDirectories(dir).Length == 0) { Debug.Log("it's first version build"); break; } } newVersion.Revision += 1; } break; case VersionOption.PromoteMinorVersion: { newVersion.MinorVersion += 1; newVersion.Revision = 0; } break; case VersionOption.PromoteLargeVersion: { newVersion.MajorVersion += 1; newVersion.MinorVersion = 0; newVersion.Revision = 0; } break; case VersionOption.CustomizeVersion: { newVersion = customizeVersion; } break; default: throw new ArgumentOutOfRangeException("versionOption", versionOption, null); } Debug.LogFormat("GetBuildVersion lastBuildVersion:{0} newVersion:{1}", lastBuildVersion, newVersion); return(newVersion); }
public AssemblyInfoOptions GetOptionValues() { return(new AssemblyInfoOptions() { AssemblyVersion = UnescapeNewlines(VersionOption.Value()), Title = UnescapeNewlines(TitleOption.Value()), Description = UnescapeNewlines(DescriptionOption.Value()), Copyright = UnescapeNewlines(CopyrightOption.Value()), NeutralLanguage = UnescapeNewlines(NeutralCultureOption.Value()), Culture = UnescapeNewlines(CultureOption.Value()), InformationalVersion = UnescapeNewlines(InformationalVersionOption.Value()), AssemblyFileVersion = UnescapeNewlines(FileVersionOption.Value()), TargetFramework = UnescapeNewlines(TargetFrameworkOption.Value()), }); }
/// <summary>Creates a query for content items with the option of including versions.</summary> /// <param name="versions">Wheter to include or exclude versions.</param> /// <param name="engine">The engine onto which the extension method is attached.</param> /// <returns>A query that can be extended.</returns> public static IQueryable <ContentItem> QueryItems(this IEngine engine, VersionOption versions) { return(engine.QueryItems <ContentItem>(versions)); }
IQueryEnding IQueryEnding.PreviousVersions(VersionOption option) { Versions = option; return(this); }
private void OnGUI() { GUILayout.Label("出包工具:", EditorStyles.boldLabel); _buildMode = (BuildMode)EditorGUILayout.EnumPopup("出包方式", _buildMode); GUILayout.Space(10); // -选择目标平台类型-// _buildTarget = (BuildTarget)EditorGUILayout.EnumPopup("选择平台", _buildTarget); _versionOption = (VersionOption)EditorGUILayout.EnumPopup("版本号模式", _versionOption); EditorGUI.indentLevel++; if (_versionOption == VersionOption.CustomizeVersion) { _customizeVersion = new AppVersion(EditorGUILayout.TextField("3位(前两位0~99之间):", _customizeVersion.ToString())); } else { EditorGUILayout.LabelField("新的版本号:", GameBuilder.GetBuildVersion(_versionOption, _customizeVersion, _buildTarget).ToString()); } EditorGUI.indentLevel--; _applyAllRule = EditorGUILayout.Toggle("强制应用所有Rule", _applyAllRule); _increativeBuildAssetBundles = EditorGUILayout.Toggle("增量式构建Bundle", _increativeBuildAssetBundles); _bundleCompress = EditorGUILayout.Toggle("开启Bundle压缩", _bundleCompress); if (_buildMode != BuildMode.Patch) { GUILayout.Space(10); _hotFixOption = (HotFixOption)EditorGUILayout.EnumPopup("热更url", _hotFixOption); EditorGUI.indentLevel++; if (_hotFixOption == HotFixOption.Customize) { _hotFixUrl = EditorGUILayout.TextField("热更Url:", _hotFixUrl); } EditorGUI.indentLevel--; _development = EditorGUILayout.Toggle("开发版本:", _development); if (_buildTarget != BuildTarget.iOS) { _useMono2X = EditorGUILayout.Toggle("是否使用mono打包", _useMono2X); } if (_buildTarget == BuildTarget.Android) { _exportProject = EditorGUILayout.Toggle("是否导出工程", _exportProject); if (_exportProject) { _useGradle = EditorGUILayout.Toggle("是否使用gradle", _useGradle); } } _bundleIdentifier = EditorGUILayout.TextField("Bundle Identifier", _bundleIdentifier); _appName = EditorGUILayout.TextField("app名字", _appName); } if (GUILayout.Button("构建")) { BuildGame(); } }