解析JSON数据ASP.NET C#和Razor - javascript

嗨,我正在使用ASP.NET和razor在VS中工作,试图用db表中的值填充表,但我必须将Json解码或解析为简单文本。我真的很感谢您的帮助。
这就是我得到的。
解析JSON数据ASP.NET C#和Razor - javascript

  [HttpGet]
        public ActionResult GetData()
        {
            string stdb = "Data Source=DMX87025;Initial Catalog=DB_PCC;Integrated Security=True";
            SqlConnection conn = new SqlConnection(stdb);
            string sql = "SELECT *FROM[DB_PCC].[dbo].[Departments]";
            SqlCommand cmd = new SqlCommand(sql, conn);
            conn.Open();

            SqlDataReader rd = cmd.ExecuteReader();

            var st = "kyo please help me u.u";
            return Json(new { success = true, message = rd },
                JsonRequestBehavior.AllowGet);
        }

这是我的AJAX ...

<div id="result"></div>
<input type="button" name="name" value="try" onclick="DepListQuery()" />

<script>

    function DepListQuery() {


        $.ajax({
            type: 'GET',
            url: '@Url.Action("GetData","Home")',
            contentType: "application/json; charset=utf-8",
            dataType: "json",
            success: function (response) {

                $('#result').text(response.message);
            },
            failure: function (response) {
                alert("something get wrong u.u");
            }
        });
    }

    

</script>

参考方案

您需要解决的第一件事是如何从SqlDataReader读取数据。这是有关此操作的教程:http://csharp-station.com/Tutorial/AdoDotNet/Lesson04

但更好的方法是将数据直接读入对象。有关创建此类扩展方法的详细信息,请参见以下答案:Convert rows from a data reader into typed results

样本扩展方法:

public static List<T> ReadList<T>(this IDataReader reader, 
                                  Func<IDataRecord, T> generator) {
     var list = new List<T>();
     while (reader.Read())
         list.Add(generator(reader));
     return list;
}

SqlDataReader rd = cmd.ExecuteReader();行之后,您将需要以下内容:

var departmentList = reader.ReadList(x => new Department {
                                           DeptID = x.GetInt32(0),
                                           DeptName = x.GetString(1)
                                    });

然后,一旦有了这样的对象列表,就可以将它们返回到前端视图ajax:

How to parse JSON list of string on ajax return?

List of Objects To Json String

我还想指出,您应该用SqlConnection块包围SqlCommandSqlDataReaderusing等。

javascript popupwindow之后的行如何工作? - javascript

好的,我有一个来自后面代码的方法,可以创建一个popupwindow。然后有一行代码要在那之后执行,我想知道那行代码何时执行,是在使用popupwindow之后执行还是在创建popupwindow之后执行?例如:void exPopupWindowMethod() { string scr = "window.open('exampleP…

ddl在服务器中未更新-asp.net - javascript

我在ASP.NET c#上工作。我有一个DropDownList。 (runat =“ server”)在$ {document).ready上,我更新了它的值:$(document).ready(function () { document.getElementById("ddl").value = "abc"; ……

.NET C#Webbrowser填充输入,不带ID或类名 - javascript

我需要在网络浏览器中填写一个输入,但这不起作用。我认为必须使用name属性来完成,但是怎么做呢?foreach (HtmlElement login in webBrowser1.Document.GetElementsByTagName("input")) { if (login.GetAttribute("name"…

从控制器以视图(javascript)访问会话 - javascript

这是我的控制器代码。我想获取视图中存储在会话中的值(JavaScript代码) decimal.TryParse(permotion.PROMOTION_AMOUNT.ToString(), out promotionAmount); int.TryParse(permotion.PROMOTION_TYPE_ID.ToString(CultureInfo.…

获取JavaScript值到C#字符串 - javascript

                        是否可以在C#中执行类似的操作?该值为“ 10/05/2014”string jsValue = javascript("$('#EstimatedStartDate').val()"); 参考方案 您能否更详细地阐明您要做什么。看来您正在尝试从javascript(客户…