C# Localde Dosya Karşılaştırma


public void databaseScriptReviewFileOpenerControlOnCompareFiles(long deploymentItemOperationIdFirst, long deploymentItemOperationIdSecond)

        {

            string originalScriptFirst = ProxyFactory.CreateProxy<IDeploymentItemService>().GenerateDeploymentItemAlterScript(deploymentItemOperationIdFirst).Result;

            string originalScriptSecond = ProxyFactory.CreateProxy<IDeploymentItemService>().GenerateDeploymentItemAlterScript(deploymentItemOperationIdSecond).Result;

            string originalScriptFileFirst = GetTemporaryScriptFile(originalScriptFirst);

            string originalScriptFileSecond = GetTemporaryScriptFile(originalScriptSecond);

 

            string arguments = string.Format("\"{0}\" \"{1}\"", originalScriptFileFirst, originalScriptFileSecond);

 

            string compareToolPath = GetParameterToolPath();

 

            if (string.IsNullOrEmpty(compareToolPath))

            {

                throw new ValidationException("Sisteminizde herhangi bir karşılaştırma aracı bulunamadı. Lütfen kontrol ediniz!", "Karşılaştırma Aracı Bulunamadı");

            }

            else

            {

                RunSafely(() =>

                {

                    ProcessStartInfo start = new ProcessStartInfo();

                    start.Arguments = arguments;

                    start.FileName = compareToolPath;

                    Process.Start(start);

                });

            }

        }



private static string GetParameterToolPath()

        {

            List<ParameterEntity> compareToolList = ProxyFactory.CreateProxy<IReleaseManagementParameterService>().GetParameterEntityList(ReleaseManagementParameterType.CompareToolPath).Result;

            foreach (var item in compareToolList)

            {

                if (File.Exists(item.ParameterValue))

                    return item.ParameterValue;

            }

            return string.Empty;

        }

 

        private static string GetTemporaryScriptFile(string originalScript)

        {

            string originalScriptFile = Path.GetTempPath() + Guid.NewGuid().ToString() + ".sql";

            File.WriteAllText(originalScriptFile, originalScript);

            return originalScriptFile;

        }

 

Yorumlar

Bu blogdaki popüler yayınlar

HOŞ GELDİNİZ

List String Equals