private string BuilDSQLTableToCSClass(StringReplacerViewModel vm, string[] lines)
        {
            StringBuilder stringBuilder = new StringBuilder();

            vm.StringMake = @"public {0} {1} {{get;set;}}";
            foreach (string line in lines)
            {
                if (!string.IsNullOrEmpty(line))
                {
                    var stringSPlit = line.Split(' ');
                    if (stringSPlit.Any() && stringSPlit[0] != null)
                    {
                        var    isReqd    = line.ToLower().Contains("not null");
                        var    newL      = stringSPlit[0].Replace("\t", "").Replace("[", "").Replace("]", "");
                        var    type      = stringSPlit[1].Any() ? stringSPlit[1].Replace("[", "").Replace("]", "") : "string";
                        var    datatype  = GetDataType(type);
                        string newString = string.Format(vm.StringMake, datatype + (isReqd ? "" : (datatype == CSDataTypeStrings.String ? "" : "?")), newL);

                        stringBuilder.AppendLine(newString);
                    }
                }
            }

            return(stringBuilder.ToString());
        }
Пример #2
0
        public ActionResult StringReplacer()
        {
            StringReplacerViewModel vm = new StringReplacerViewModel();

            vm.IsDotNet     = "C#";
            vm.ReplacerType = 1;
            return(View(vm));
        }
        private string BuildCustomString(StringReplacerViewModel vm, string[] lines)
        {
            StringBuilder stringBuilder = new StringBuilder();
            //vm.{Id} = post.{Id}
            List <int> dynamicInputIndexes = new List <int>();

            //get dynamic Input accdg to user input
            var splittedSample    = vm.StringDynamicInput.Split(Convert.ToChar(vm.Splitter));
            var indexDynamicInput = splittedSample.Select((c, i) => new { c, i }).Where(c => c.c.ToString().StartsWith("{") && c.c.EndsWith("}") && !c.c.StartsWith("{{") && !c.c.EndsWith("}}")).Select(c => c.i);  //splittedSample.Where((c,i) => c.StartsWith("{") && c.EndsWith("}") && !c.StartsWith("{{") && !c.EndsWith("}}")).Select((c,i)=> i).ToArray();


            object []     parameterArgs;
            List <object> parameters = new List <object>();;
            StringBuilder newLSb     = new StringBuilder();
            string        tempLine   = "";

            foreach (string line in lines)
            {
                parameters.Clear();
                if (!string.IsNullOrEmpty(line))
                {
                    var charsToremove = vm.CharsToRemove.Split(',');

                    newLSb.Clear();
                    newLSb.AppendLine(line);
                    foreach (var c in charsToremove)
                    {
                        newLSb = newLSb.Replace(c.ToString(), "");
                    }
                    var stringSPlit = newLSb.ToString().Split(Convert.ToChar(vm.Splitter));


                    foreach (var param in indexDynamicInput)
                    {
                        var type = GetDataType(stringSPlit[param]);
                        if (vm.IsConvertDatatype && !string.IsNullOrEmpty(type))
                        {
                            parameters.Add(type);
                        }
                        else
                        {
                            parameters.Add(stringSPlit[param]);
                        }
                    }
                    parameterArgs = parameters.ToArray();

                    if (stringSPlit.Any() && stringSPlit[0] != null)
                    {
                        string newString = string.Format(vm.StringMake, parameterArgs);

                        stringBuilder.AppendLine(newString);
                    }
                }
            }

            return(stringBuilder.ToString());
        }
        public byte[] ProcessString(StringReplacerViewModel vm)
        {
            string[]         lines    = System.IO.File.ReadAllLines(vm.FilePathInput);
            System.IO.Stream stream   = new System.IO.MemoryStream();
            string           sbuilder = "";

            if ((int)ReplacerType.SQLTableToCSClass == vm.ReplacerType)
            {
                sbuilder = BuilDSQLTableToCSClass(vm, lines);
            }
            else if ((int)ReplacerType.CustomString == vm.ReplacerType)
            {
                sbuilder = BuildCustomString(vm, lines);
            }
            return(Encoding.ASCII.GetBytes(sbuilder));
        }
Пример #5
0
        public ActionResult GenerateString(StringReplacerViewModel vm)
        {
            byte[] content  = null;
            var    key      = Guid.NewGuid().ToString();
            var    filename = string.Format("mystringreplacer.txt");
            StringReplacerService stringReplacerService = new StringReplacerService();

            vm.ReplacerType  = 1;
            vm.FilePathInput = @"C:\Users\dell\Desktop\stringReplacer\s.txt"; //vm.FilePathInput;

            content = stringReplacerService.ProcessString(vm);

            Session[key] = new Tuple <string, byte[]>(filename, content);


            return(Json(new { key, success = true }));
        }