I am struggling with creating a grid without using Kendo. I am trying to build a dictionary where I have a list of words that I pass to an AJAX JavaScript and display it in a grid on the view. However, I am having trouble figuring out how to make this work. Any help would be greatly appreciated.
This is my controller:
public ActionResult CheckingInBank(string username, string password, string datasource, string bnkname, string SqlQuery)
{
SqlConnectionStringBuilder builder = new SqlConnectionStringBuilder();
builder["Server"] = datasource;
builder["Connect Timeout"] = 1000;
builder["Trusted_Connection"] = true;
builder["Integrated Security"] = false;
builder.InitialCatalog = bnkname;
builder.Password = password;
builder.UserID = username;
List<TranslateViewModel> translateViewList = new List<TranslateViewModel>();
WebGrid TranslateGrid = new WebGrid();
using (SqlConnection con = new SqlConnection(builder.ConnectionString))
{
con.Open();
using (SqlCommand cmd = new SqlCommand(SqlQuery, con))
{
using (SqlDataReader dr = cmd.ExecuteReader())
{
while (dr.Read())
{
TranslateViewModel translateView = new TranslateViewModel();
translateView.id = dr[0].ToString();
translateView.word = dr[1].ToString();
translateView.translate = dr[2].ToString();
translateViewList.Add(translateView);
}
if (translateViewList.Count > 0)
{
return Json(new { translateViewList = translateViewList }, JsonRequestBehavior.AllowGet);
}
else
{
return Json("No Record Found");
}
}
}
}
}
JavaScript
function checkingInBank() {
var translate = $("#eWord").val();
var bnkname = $("#combo").val();
var username = $("#Username").val().trim();
var password = $("#password").val();
var datasource = $("#Datasource").val();
var SqlQuery = "select * from lego.LocalizationView where Word =N'" + translate + "'";
if (bnkname) {
$.ajax({
url: 'Home/checkingInBank?' + "Username=" + username + "&Password=" + password + "&databaseConString=" + datasource + "&bnkname=" + bnkname,
data: {
bnkname: bnkname,
username: username,
password: password,
datasource: datasource,
SqlQuery: SqlQuery
},
type: "get",
datatype: "json",
traditional: true,
success: function (data) {
console.log('I am facing some challenges with this');
debugger;
if (data != "No Record Found") {
$('#gridContent').html(data);
} else {
alert('No Record Found');
}
}
});
}
else {
//do nothing
}
}
and my view
and this :(((
@{
var grid = new WebGrid(ViewModeList, canPage: true, rowsPerPage: 5,
selectionFieldName: "selectedRow", ajaxUpdateContainerId: "gridContent");
grid.Pager(WebGridPagerModes.All);
}
@grid.GetHtml(
tableStyle: "webGrid",
columns: new[]
{
grid.Column("id"),
grid.Column("Word"),
grid.Column("Translate")
});