C# ASP.NET如何添加脚本?

C# ASP.NET如何添加脚本?,c#,asp.net,visual-studio,C#,Asp.net,Visual Studio,我在ASP.NET中添加动态脚本时遇到问题 我想把脚本放在ASP:ScriptManager的scriptText中,但当我运行我的应用程序时,它不起作用,有人能帮我吗 这个应用程序是用来用数据库中的数据制作图表的,当我从数据库中读取数据并将其放入scriptText中时,一切正常,运行良好,但我看不到图表,如果我将chartsJS.org中的代码放入,一切正常 请帮忙! 转发谢谢 我有这个剧本 protected void Page_Load(object sender, EventArgs

我在ASP.NET中添加动态脚本时遇到问题

我想把脚本放在ASP:ScriptManager的scriptText中,但当我运行我的应用程序时,它不起作用,有人能帮我吗

这个应用程序是用来用数据库中的数据制作图表的,当我从数据库中读取数据并将其放入scriptText中时,一切正常,运行良好,但我看不到图表,如果我将chartsJS.org中的代码放入,一切正常

请帮忙! 转发谢谢

我有这个剧本

protected void Page_Load(object sender, EventArgs e)
{
    List<object> office = new List<object>();
    List<object> cantidad = new List<object>();
    List<object> labelCantidad = new List<object>();
    List<string> labels = new List<string>();
    DataTable tablaResultado = new DataTable();
    tablaResultado = Datos.AccesoDatos.ResumenOffice();
    if (tablaResultado.Rows.Count > 0)
    {
        foreach (DataRow fila in tablaResultado.Rows)
        {
            labels.Add(fila[0].ToString());
            labelCantidad.Add(fila[1].ToString());
        }


    }
    StringBuilder sb = new StringBuilder();
    string scriptText = "";
    scriptText += "var ctx = document.getElementById(" + "resumen_office" + ").getContext('2d');";
    scriptText += "var myChart = new Chart(ctx, {";
    scriptText += "type: 'line',";
    scriptText += " data: {";
    foreach (object obj in labels)
    {
        sb.Append(string.Format("'{0}', ",obj));
    }
    scriptText += "labels: [" + sb + "]";
    scriptText += "datasets: [{";
    scriptText += "label: 'Microsoft Office',";
    StringBuilder objt = new StringBuilder();
    foreach (object obj in labelCantidad)
    {
        objt.Append(string.Format("{0}, ",Convert.ToInt32(obj)));
    }
    scriptText += "data: [" + objt + "]";
    scriptText += " backgroundColor: [";
    scriptText += "'rgba(255, 99, 132, 0.2)',";
    scriptText += "],";
    scriptText += "borderColor: [";
    scriptText += "'rgba(255,99,132,1)',";
    scriptText += "],";
    scriptText += "borderWidth: 1";
    scriptText += "}]";
    scriptText += "},";
    scriptText += "options: {";
    scriptText += "scales: {";
    scriptText += "yAxes: [{";
    scriptText += "ticks: {";
    scriptText += "beginAtZero: true";
    scriptText += "}";
    scriptText += "}]";
    scriptText += "}";
    scriptText += "}";
    scriptText += "});";
    scriptText += "</script>";
    grafico.CompositeScript.Path = scriptText;

}
受保护的无效页面加载(对象发送方,事件参数e)
{
列表办公室=新列表();
List cantidad=新列表();
List labelCantidad=新列表();
列表标签=新列表();
DataTable tablaResultado=新DataTable();
tablaResultado=Datos.AccesoDatos.ResumenOffice();
如果(tablaResultado.Rows.Count>0)
{
foreach(tablaResultado.Rows中的数据行fila)
{
labels.Add(fila[0].ToString());
labelCantidad.Add(fila[1].ToString());
}
}
StringBuilder sb=新的StringBuilder();
字符串scriptText=“”;
scriptText++“var ctx=document.getElementById(“+”简历办公室“+”).getContext('2d');”;
scriptText+=“var myChart=新图表(ctx,{”;
scriptText+=“类型:'行',”;
scriptText+=“数据:{”;
foreach(标签中的对象对象对象)
{
sb.Append(string.Format(“{0}',”,obj));
}
scriptText+=“标签:[“+sb+”]”;
scriptText+=“数据集:[{”;
scriptText+=“标签:‘Microsoft Office’,”;
StringBuilder objt=新的StringBuilder();
foreach(labelCantidad中的对象对象)
{
Append(string.Format(“{0},”,Convert.ToInt32(obj));
}
scriptText+=“数据:[“+objt+”]”;
scriptText+=“背景颜色:[”;
scriptText+=“'rgba(255,99,132,0.2)”;
scriptText+=“],”;
scriptText+=“borderColor:[”;
scriptText+=“rgba(255,99132,1)”;
scriptText+=“],”;
scriptText+=“边框宽度:1”;
scriptText+=“}]”;
scriptText+=“},”;
scriptText+=“选项:{”;
scriptText+=“缩放:{”;
scriptText+=“yAxes:[{”;
scriptText+=“记号:{”;
scriptText+=“beginAtZero:true”;
scriptText+=“}”;
scriptText+=“}]”;
scriptText+=“}”;
scriptText+=“}”;
scriptText+=“});”;
scriptText+=“”;
grafico.CompositeScript.Path=脚本文本;
}
此脚本位于tests.aspx.cs中

在tests.aspx中,我有这个

<%@ Page Title="" Language="C#" MasterPageFile="~/MasterPage.master" AutoEventWireup="true" CodeFile="tests.aspx.cs" Inherits="tests" %>

<asp:Content ID="Content1" ContentPlaceHolderID="head" runat="Server">
</asp:Content>
<asp:Content ID="Content2" ContentPlaceHolderID="CPH" runat="Server">
<div class="container-fluid">
<canvas id="resumen_office"></canvas>
</div>

<asp:ScriptManager ID="grafico" runat="server">
</asp:ScriptManager>
</asp:Content>


使用或使用ScriptManager在页面上注册脚本块。对于include脚本,请使用

谢谢anwser Vladimir,你能给我举个例子吗?因为我试过了,但也没用。谢谢你的帮助,我刚刚把ScriptManager.RegisterStartupScript(this,this.GetType(),“grafico”,scriptText,true);它解决了它!