C# 如何在javascript文件中调用sql函数?asp.NETC

C# 如何在javascript文件中调用sql函数?asp.NETC,c#,javascript,asp.net,C#,Javascript,Asp.net,我正在开发一个日历,它从sql数据库中获取条目。 在javascript文件中,日历是以编程方式构建的,当它在一天内生成日历单元格时,我对代码进行了硬编码。在这种情况下,是var计数器,我只需要将查询放在函数中 JavaScript文件 if (counter == 2 //2 is the Harcoded day && mes == 8 //Hardcoded month && anio == 2014) { //Harco

我正在开发一个日历,它从sql数据库中获取条目。 在javascript文件中,日历是以编程方式构建的,当它在一天内生成日历单元格时,我对代码进行了硬编码。在这种情况下,是var计数器,我只需要将查询放在函数中

JavaScript文件

  if (counter == 2 //2 is the Harcoded day
        && mes == 8 //Hardcoded month
        && anio == 2014) { //Harcoded year
            PageMethods.Msg(onSuccess);
            function onSuccess(response) {
                alert(response);
            }

            htmlContent += "<div class='usuer'>Here data retrieved from DB</div>";
            htmlContent += "<div class='client'>Here data retrieved from DB</div>";
            htmlContent += "<div class='num'>Here data retrieved from DB</div>";
            htmlContent += "<div class='status'></div>";
        }
我在代码隐藏中创建了这个方法,但我不知道如何传递Object Div来获取查询结果并将其设置在Divs中,或者获取计数器来将其放入查询并获取特定日期的结果

代码隐藏

[System.Web.Services.WebMethod]
    public static string Msg()
    {
        return "Hello world";


        string connStr = ConfigurationManager.ConnectionStrings["ConnStr"].ConnectionString;
        using (SqlConnection myConnection = new SqlConnection(connStr))
        {
            myConnection.Open();
            SqlCommand sqlCommand = new SqlCommand(" SELECT * FROM table",myConnection);


            //Add parameters to the query
            //<--- Here? How to get counter of the javascript file? :( 


            SqlDataReader dr = sqlCommand.ExecuteReader();
            if (dr != null)
            {
                while (dr.Read())
                {
                    //<-- Here? How to set the result to the divs? :(

                }
            }
        }
    }

最好使用Ajax请求将数据加载到日历中,但如果必须这样做的话

创建一个操作,在其中准备数据并将其作为参数发送到视图。在视图中,使用标记结束代码

范例

接种

    public ActionResult MyJS()
    {
        calendar = new List<DateTime>();

        calendar.Add(DateTime.Parse("2010-03-21 12:00"));
        calendar.Add(DateTime.Parse("2011-03-21 12:00"));
        calendar.Add(DateTime.Parse("2012-03-21 12:00"));

        return View(calendar);
    }
维耶夫


并添加到布局中

为什么返回Hello world;在顶部?只是举个例子,确保调用正常,这是我的第一个功能:C思考这样发生的顺序;1.客户端请求第2页。服务器调用代码生成页面源代码,3。调用结束,页面源传输到客户端,4。客户端接收页面源,5。与服务器的连接已关闭,6。客户端浏览器解释源代码7。在客户机上执行,8。结束解释客户端,9。显示给客户端的呈现页面。i、 e.在执行JavaScript的第7步之前,服务器端代码已经完成,与服务器的连接已经关闭。
@model List<DateTime>
@{
    Layout = null; // important
}
@foreach (var item in Model)
{
    <text> 
        alert(" @item.ToString()  ");
    </text>
}