public List <FieldVersionDetail> GetFieldVersionDetails(string selectedPlatform, string selectedVersion, int index)
        {
            FileColumns fc = FORIS.Interbilling.NTS.Mediation.Configurations.Configuration.GetNotCashedConfiguration <FileColumns>();
            string      selectedFileType = selectedPlatform;

            DataTable dtFileColumns = new DataTable();

            dtFileColumns.Columns.Add("ColumnName");
            dtFileColumns.Columns.Add("ColumnLength");

            VersionDeterminationMethods valueMethod = (VersionDeterminationMethods)Enum.Parse(typeof(VersionDeterminationMethods), selectedVersion);

            List <FileTypeVersion.Version> list = fc.Files.Find(p => p.Method == valueMethod && p.fileType == selectedFileType).Versions;

            FileTypeVersion.Version version = list[index];

            bool exist = version.Columns.Count != 0;
            List <FieldVersionDetail> retList = new List <FieldVersionDetail>();

            if (exist)
            {
                foreach (var v in list[index].Columns)
                {
                    FieldVersionDetail obj = new FieldVersionDetail();
                    obj.FieldName   = v.ColumnName;
                    obj.FieldLength = v.ColumnLength;

                    retList.Add(obj);
                }
            }
            return(retList);
        }
        public void DeleteFieldVersionDetail(string selectedPlatform, string selectedVersion, int index, int detailIndex)
        {
            FileColumns fc = FORIS.Interbilling.NTS.Mediation.Configurations.Configuration.GetNotCashedConfiguration <FileColumns>();
            string      selectedFileType            = selectedPlatform;
            VersionDeterminationMethods valueMethod = (VersionDeterminationMethods)Enum.Parse(typeof(VersionDeterminationMethods), selectedVersion);
            var version = fc.Files.Find(p => p.Method == valueMethod && p.fileType == selectedFileType).Versions[index];
            var columns = version.Columns;

            string logString = "FileType:" + selectedPlatform + "|" +
                               "VersionMethod:" + selectedVersion + "|" +
                               "VersionName:" + version.VersionName + "|" +
                               "ColumnName:" + columns[index].ColumnName + "|" +
                               "ColumnLength:" + columns[index].ColumnLength;

            WriteLog("DELETE", "MED Configuration", "FileControl.Column", System.Security.Principal.WindowsIdentity.GetCurrent().Name, logString, "");

            columns.RemoveAt(detailIndex);

            FORIS.Interbilling.NTS.Mediation.Configurations.Configuration.SaveConfiguration(fc.GetType(), fc);
        }
        public void DeleteFieldVersion(int index, string selectedPlatform, string selectedVersion)
        {
            FileColumns fc = FORIS.Interbilling.NTS.Mediation.Configurations.Configuration.GetNotCashedConfiguration <FileColumns>();
            string      selectedFileType            = selectedPlatform;
            VersionDeterminationMethods valueMethod = (VersionDeterminationMethods)Enum.Parse(typeof(VersionDeterminationMethods), selectedVersion);

            var versions = fc.Files.Find(p => p.Method == valueMethod && p.fileType == selectedFileType).Versions;
            var file     = fc.Files.Find(p => p.Method == valueMethod && p.fileType == selectedFileType && p.Versions == versions);

            string logString = "FileType:" + selectedPlatform + "|" +
                               "VersionMethod:" + selectedVersion + "|" +
                               "VersionName:" + versions[index].VersionName + "|" +
                               "VersionFileNameFormat:" + versions[index].VersionFileNameFormat + "|" +
                               "VersionStartDate:" + versions[index].VersionStartDate + "|" +
                               "VersionEndDate:" + versions[index].VersionEndDate;

            WriteLog("DELETE", "MED Configuration", "FileControl.Version", System.Security.Principal.WindowsIdentity.GetCurrent().Name, logString, "");

            fc.Files.Remove(file);

            FORIS.Interbilling.NTS.Mediation.Configurations.Configuration.SaveConfiguration(fc.GetType(), fc);
        }
        public void InsertFieldVersionDetail(string selectedPlatform, string selectedVersion, int index, string name, string length)
        {
            FileColumns fc = FORIS.Interbilling.NTS.Mediation.Configurations.Configuration.GetNotCashedConfiguration <FileColumns>();

            string selectedFileType = selectedPlatform;
            VersionDeterminationMethods valueMethod = (VersionDeterminationMethods)Enum.Parse(typeof(VersionDeterminationMethods), selectedVersion);

            FileTypeVersion.Version ver = fc.Files.Find(p => p.Method == valueMethod && p.fileType == selectedFileType).Versions[index];

            Column col = new Column();

            col.ColumnName   = name;
            col.ColumnLength = length;

            ver.Columns.Add(col);
            FORIS.Interbilling.NTS.Mediation.Configurations.Configuration.SaveConfiguration(fc.GetType(), fc);

            string logString = "VersionName:" + ver.VersionName + "|" +
                               "ColumnName:" + col.ColumnName + "|" +
                               "ColumLenght:" + col.ColumnLength;

            WriteLog("INSERT", "MED Configuration", "FileColumns.Columns", System.Security.Principal.WindowsIdentity.GetCurrent().Name, logString, "");
        }