send array data in input values using Javascript or JQuery and AspNet Core MVC To Controller function and insert MsSQL?

48 Views Asked by At

I using AspNet Core MVC, I want design dynamic system. User enter sql query and save to database. I can get this sql queries, delete 'select' and 'from....' and getting column names. and slice column names with ','. and adding to an array. but how can send this array values to Controller. I don't using Model because I don't know how many column so I don't know how many declare variable in Model.

My Code: `

<script>
        $(document).ready(function(){
            var k = [];
            var input = document.getElementsByName('SqlQuery[]');
            var input1 = document.getElementsByName('ReportId[]');
            var input2 = document.getElementsByName('FolderId[]');
            var testRE = new Array();
            var columnArray = new Array();
            for (var i = 0; i < input.length; i++) {
                var a = input[i];
                var b = input1[i];
                var c = input2[i];
                k.push([[a.value],[b.value],[c.value]]);
            }
            for(var i=0;i<k.length;i++){
                var fString = 'select';
                var sString = 'from';
                var regExString = new RegExp("(?:" + fString + ")((.[\\s\\S]*))(?:" + sString + ")", "ig");
                testRE.push(regExString.exec(k[i][0]) + " , " + k[i][1] + " , " + k[i][2]);
            }
            
            for(var i=0;i<testRE.length;i++){
                columnArray.push([testRE[i].trim().replace(/10,/g, '10.').split(",")]);
                var Degerler = {
                val""+i = columnArray[i];
                }
                console.log(columnArray[i]);
                $.ajax({
                    type:'POST',
                    url: '/Graphic/InsertColumns',
                    dataType: 'text/javascript',
                    data:{
                        columnArray : ValidityState""+i
                    },success:function(){

                    },error:function(){

                    }
                });
            }

        });
    </script>

`

`

<script>
        $(document).ready(function(){
            var k = [];
            var input = document.getElementsByName('SqlQuery[]');
            var input1 = document.getElementsByName('ReportId[]');
            var input2 = document.getElementsByName('FolderId[]');
            var testRE = new Array();
            var columnArray = new Array();
            for (var i = 0; i < input.length; i++) {
                var a = input[i];
                var b = input1[i];
                var c = input2[i];
                k.push([[a.value],[b.value],[c.value]]);
            }
            for(var i=0;i<k.length;i++){
                var fString = 'select';
                var sString = 'from';
                var regExString = new RegExp("(?:" + fString + ")((.[\\s\\S]*))(?:" + sString + ")", "ig");
                testRE.push(regExString.exec(k[i][0]) + " , " + k[i][1] + " , " + k[i][2]);
            }
            
            for(var i=0;i<testRE.length;i++){
                columnArray.push([testRE[i].trim().replace(/10,/g, '10.').split(",")]);
                var Degerler = {
                val""+i = columnArray[i];
                }
                console.log(columnArray[i]);
                $.ajax({
                    type:'POST',
                    url: '/Graphic/InsertColumns',
                    dataType: 'text/javascript',
                    data:{
                        columnArray : ValidityState""+i
                    },success:function(){

                    },error:function(){

                    }
                });
            }

        });
    </script>

`

0

There are 0 best solutions below