/// <summary>
        
/// 是否需要更新
        
/// </summary>
        
/// <param name="newestVersion"></param>
        
/// <returns></returns>
        public bool ShouldUpdate(string newestVersion)
        {
            
string currentVersion = GetAssemblyVersion();

            
int[] newVersionNums = ToIntArray(newestVersion.Split('.'));
            
int[] curVersionNums = ToIntArray(currentVersion.Split('.'));

            
for (int i = 0; i < Math.Min(newVersionNums.Length, curVersionNums.Length); i++)
            {
                
if (newVersionNums[i] > curVersionNums[i])
                    
return true;
                
if (newVersionNums[i] < curVersionNums[i])
                    
return false;
            }

            
return false;
        }

        
private int[] ToIntArray(string[] strArray)
        {
            
int[] ret = new int[strArray.Length];
            
for (int i = 0; i < ret.Length; i++)
                ret[i] 
= int.Parse(strArray[i]);
            
return ret;
        }

        
private string GetAssemblyVersion()
        {
            
return System.Reflection.Assembly.GetExecutingAssembly().GetName().Version.ToString();
        }

相关文章: