Exemplo n.º 1
0
        public static AppVersionCollection SingletonInstance()
        {
            var versionCollection = new AppVersionCollection();

            versionCollection.Init();
            return(versionCollection);
        }
Exemplo n.º 2
0
        public AppVersion GetNewVersion()
        {
            AppInfo appInfo = AppInfo.Get(this._appName);

            if (appInfo == null)
            {
                return(null);
            }
            Version     version       = Version.Parse(this._version);
            VersionType acceptVersion = UserAcceptVersionType(_userCode, appInfo.App_Id);

            acceptVersion = acceptVersion | VersionType.Release;//always contain RELEASE version
            long verNumber  = version.GetVersionNumber();
            var  collection = AppVersionCollection.SingletonInstance().FindAll(it => it.App_Id == appInfo.App_Id && it.VersionNumber > verNumber && (it.Version_Type & acceptVersion) == it.Version_Type);

            if (collection == null || collection.Count <= 0)
            {
                return(null);
            }
            var        forceUpgrades = collection.FindAll(it => it.Is_Force_Upgrade == 1);//force upgrade app versions
            var        orderedList   = collection.OrderByDescending(it => it.VersionNumber);
            AppVersion latestVersion = orderedList.FirstOrDefault();

            if (latestVersion.Is_Force_Upgrade != 1)
            {
                latestVersion.Is_Force_Upgrade = (forceUpgrades != null && forceUpgrades.Count > 0) ? 1 : 0;
            }
            return(latestVersion);
        }