有没有办法在这段代码中使用参数化查询?

时间:2016-01-13 15:26:46

标签: javascript c# jquery json razor

我已经从论坛上得到了这个,但其中一个答案提供了一种在url字符串中使用搜索参数的方法。我的一些表太大而无法在浏览器中加载,所以显然我必须找到如何将搜索参数添加到此代码中。我没有使用其他代码的唯一原因是它显示了如何使用日历执行此操作 我对JSON / jQuery / razor / c#一无所知。请帮忙。

@{
    var db = Database.Open("LGOnline");
    var result = db.Query("SELECT * FROM CashOS");
    var data = result.Select(x => new
    {
        ID = x.ID,
        STORE_NO = x.STORE_NO,
        DATE = x.DATE,
        MWS_AMOUNT = x.MWS_AMOUNT,
        FINAL_AMOUNT = x.FINAL_AMOUNT
    }).ToArray();

    Json.Write(data, Response.Output);
    Response.ContentType = "application/json";
}

更新:我正在使用Microsoft WebMatrix 3.我能够使用此代码从我的表中获取数据,并将它们转换为JSON。我只是不需要一次全部。

更新:我完成了我想做的事情。它不漂亮,我对任何数量的建议持开放态度,但这使我可以输入网址并添加& STORE_NO = 55,如果我愿意,我也可以选择日期。

@{
    var db1 = Database.Open("LGOnline");
    var formValue2 = Request.Form["STORE_NO"];
    var formValue3 = Request.Form["DATE"];
    if (IsPost)
    {
        Response.Redirect("test.cshtml?&STORE_NO=" + formValue2 + "&DATE=" + formValue3);
    }
    var Keyword2 = Request.QueryString["STORE_NO"];    //Retrieves passed variable from the database search page for STORE_NO
    var Keyword3 = Request.QueryString["DATE"];    //Retrieves passed variable from the database search page for DATE

    var sqlQ = "SELECT * FROM CashOS WHERE STORE_NO LIKE @0 AND DATE LIKE @1";
    var dataQ = db1.Query(sqlQ, "%" + Keyword2 + "%", "%" + Keyword3 + "%");  
    var requestedData = dataQ.Select(x => new
    {
        ID = x.ID,
        STORE_NO = x.STORE_NO,
        DATE = x.DATE,
        MWS_AMOUNT = x.MWS_AMOUNT,
        FINAL_AMOUNT = x.FINAL_AMOUNT
    }).ToArray();

    Json.Write(dataQ, Response.Output);
    Response.ContentType = "application/json";
}

顺便说一下这是输出: [{ “ID”:28, “STORE_NO”:55, “日期”: “/日期(1442811600000)/”, “MWS_AMOUNT”:10.1600 “FINAL_AMOUNT”:10.1600}]

谢谢大家的帮助!!

0 个答案:

没有答案