none
Asp Net Core Google Chart ve ChartJs C# değişkeni Script tarafına Aktarmak RRS feed

  • Soru

  • Merhabalar,
    ASP .Net Core 2.2 de web uygulaması geliştiriyorum. Bir noktada yeni olduğumdan ötürü takılı kaldım.

    ASP .Net Core da kullanıcıdan aldığım verileri arka planda class yapısında işleyip iki adet sayısal dizi elde ediyorum.

    Bunları curved line, bar chart gibi çeşitli grafikler yoluyla göstermek istiyorum lakin @model yoluyla sınıftan çektiğim değişkenleri kullanabiliyorken bir türlü script yapısı içinde değerlendiremedim.

    Örnek:

    ChartJs Çizelgeler

    <canvas id="myChart" width="400" height="400"></canvas>
    <script>
    var ctx = document.getElementById('myChart').getContext('2d');
    var myChart = new Chart(ctx, {
        type: 'bar',
        data: {
            labels: ['Red', 'Blue', 'Yellow', 'Green', 'Purple', 'Orange'],
            datasets: [{
                label: '# of Votes',
                data: [12, 19, 3, 5, 2, 3],
    
                borderColor: [
                    'rgba(255, 99, 132, 1)',
                    'rgba(54, 162, 235, 1)',
                    'rgba(255, 206, 86, 1)',
                    'rgba(75, 192, 192, 1)',
                    'rgba(153, 102, 255, 1)',
                    'rgba(255, 159, 64, 1)'
                ],
                borderWidth: 1
            }]
        },
        options: {
            scales: {
                yAxes: [{
                    ticks: {
                        beginAtZero: true
                    }
                }]
            }
        }
    });
    </script>

    Google Çizelgeler

     <html>
      <head>
        <script type="text/javascript" src="https://www.gstatic.com/charts/loader.js"></script>
        <script type="text/javascript">
          google.charts.load('current', {'packages':['corechart']});
          google.charts.setOnLoadCallback(drawChart);
    
          function drawChart() {
            var data = google.visualization.arrayToDataTable([
              ['Year', 'Sales', 'Expenses'],
              ['2004',  1000,      400],
              ['2005',  1170,      460],
              ['2006',  660,       1120],
              ['2007',  1030,      540]
            ]);
    
            var options = {
              title: 'Company Performance',
              curveType: 'function',
              legend: { position: 'bottom' }
            };
    
            var chart = new google.visualization.LineChart(document.getElementById('curve_chart'));
    
            chart.draw(data, options);
          }
        </script>
      </head>
      <body>
        <div id="curve_chart" style="width: 900px; height: 500px"></div>
      </body>
    </html>

    Bu her iki kod bloğunda yer alan dataları elle girmek yerine verileri elde ettiğim bir dizi aracılığıyla işlemek istiyorum.
    Arka tarafta şu şekilde hesaplanmış dizilerden bir eğri her iki Grafik türünde nasıl çıkarabilirim?

    int[] x_ekseni_olculen_yillar = { 1997, 2003, 2005, 2009, 2014, 2018, 2019 };
    int[] y_ekseni_ofke_katsayisi = { 1, 3, 5, 3, 1, 18, 9 };

    20 Nisan 2019 Cumartesi 18:17

Yanıtlar

  • Merhaba hocam;

    öncelikle .net core bilmediğimi söyleyerek bir çözüm önerisi sunayım. Classta işlediğiniz verileri model üzerinden değilde bir session değişkeni üzerinden view 'a gönderirseniz js kodlarınız içerisinde yakalayabilirsiniz. Hayır ben model üzerinden göndermek istiyorum diyorsanız aktardığınız verileri view tarafında önce gizli bir label yada div in içine yazdırın .Daha sonra id sini bildiğiniz bu eleman üzerinden verileri js tarafından çekebilirsiniz.


    Mustafa Taş

    Ek olarak birde şöyle bişey var

    https://stackoverflow.com/questions/16361364/accessing-mvcs-model-property-from-javascript


    Mustafa Taş

    22 Nisan 2019 Pazartesi 05:53
  • Merhaba hocam;

    öncelikle .net core bilmediğimi söyleyerek bir çözüm önerisi sunayım. Classta işlediğiniz verileri model üzerinden değilde bir session değişkeni üzerinden view 'a gönderirseniz js kodlarınız içerisinde yakalayabilirsiniz. Hayır ben model üzerinden göndermek istiyorum diyorsanız aktardığınız verileri view tarafında önce gizli bir label yada div in içine yazdırın .Daha sonra id sini bildiğiniz bu eleman üzerinden verileri js tarafından çekebilirsiniz.


    Mustafa Taş

    Ek olarak birde şöyle bişey var

    https://stackoverflow.com/questions/16361364/accessing-mvcs-model-property-from-javascript


    Mustafa Taş

    Merhaba Mustafa Bey,

    Session üzerinden Modeli atlayarak veri taşımayı ve js içerisinde döndürmeyi açıkçası başaramadım ama bu ikinci mesajınızdan biraz da çabalayarak aradığım yanıta ulaştım. 

    Merak eden olursa diye de genel açayım.

    View'a verileri List yerine Class ile taşıyıp Class içerisinde dizi değişkeni belirledim ve nihayetinde Js içerisinde Json.Serialize yolunu kullanarak verileri script göreceği şekilde işleyebildim 
    23 Nisan 2019 Salı 10:17

Tüm Yanıtlar

  • Bir çözüm bulabilen var mı acaba?
    21 Nisan 2019 Pazar 19:55
  • Merhaba hocam;

    öncelikle .net core bilmediğimi söyleyerek bir çözüm önerisi sunayım. Classta işlediğiniz verileri model üzerinden değilde bir session değişkeni üzerinden view 'a gönderirseniz js kodlarınız içerisinde yakalayabilirsiniz. Hayır ben model üzerinden göndermek istiyorum diyorsanız aktardığınız verileri view tarafında önce gizli bir label yada div in içine yazdırın .Daha sonra id sini bildiğiniz bu eleman üzerinden verileri js tarafından çekebilirsiniz.


    Mustafa Taş

    22 Nisan 2019 Pazartesi 05:30
  • Merhaba hocam;

    öncelikle .net core bilmediğimi söyleyerek bir çözüm önerisi sunayım. Classta işlediğiniz verileri model üzerinden değilde bir session değişkeni üzerinden view 'a gönderirseniz js kodlarınız içerisinde yakalayabilirsiniz. Hayır ben model üzerinden göndermek istiyorum diyorsanız aktardığınız verileri view tarafında önce gizli bir label yada div in içine yazdırın .Daha sonra id sini bildiğiniz bu eleman üzerinden verileri js tarafından çekebilirsiniz.


    Mustafa Taş

    Ek olarak birde şöyle bişey var

    https://stackoverflow.com/questions/16361364/accessing-mvcs-model-property-from-javascript


    Mustafa Taş

    22 Nisan 2019 Pazartesi 05:53
  • Merhaba hocam;

    öncelikle .net core bilmediğimi söyleyerek bir çözüm önerisi sunayım. Classta işlediğiniz verileri model üzerinden değilde bir session değişkeni üzerinden view 'a gönderirseniz js kodlarınız içerisinde yakalayabilirsiniz. Hayır ben model üzerinden göndermek istiyorum diyorsanız aktardığınız verileri view tarafında önce gizli bir label yada div in içine yazdırın .Daha sonra id sini bildiğiniz bu eleman üzerinden verileri js tarafından çekebilirsiniz.


    Mustafa Taş

    Ek olarak birde şöyle bişey var

    https://stackoverflow.com/questions/16361364/accessing-mvcs-model-property-from-javascript


    Mustafa Taş

    Merhaba Mustafa Bey,

    Session üzerinden Modeli atlayarak veri taşımayı ve js içerisinde döndürmeyi açıkçası başaramadım ama bu ikinci mesajınızdan biraz da çabalayarak aradığım yanıta ulaştım. 

    Merak eden olursa diye de genel açayım.

    View'a verileri List yerine Class ile taşıyıp Class içerisinde dizi değişkeni belirledim ve nihayetinde Js içerisinde Json.Serialize yolunu kullanarak verileri script göreceği şekilde işleyebildim 
    23 Nisan 2019 Salı 10:17