public ActionResult GridSave(FormCollection data)
{
try
{
DataContext db = new DataContext();
int Id = int.Parse(data["Id"]);
var user = db.UserProfiles.Where(el => el.UserId == Id).FirstOrDefault();
if (user == null)
return Content("Record not found.");
if (data["FirstName"] != null)
user.FirstName = data["FirstName"];
if (data["LastName"] != null)
user.LastName = data["LastName"];
if (data["UserName"] != null)
{
var strUsername = data["UserName"];
var tempUser = db.UserProfiles.SingleOrDefault(x => x.UserName.Trim() == strUsername.Trim() && x.UserId != Id);
if (tempUser != null)
{
return Content("\"" + strUsername + "\" already in use.");
}
else
{
user.UserName = strUsername;
}
}
if (data["Password"] != null)
user.Password = FormsAuthentication.HashPasswordForStoringInConfigFile(data["Password"], "sha1");
if (data["PasswordExpiry"] != null)
user.Password_Expiry =Convert.ToString(data["PasswordExpiry"]);
user.Modified = Convert.ToString(DateTime.Now);
user.ModifiedBy = User.Identity.Name;
//db.UserProfiles.Add(user);
db.SaveChanges();
}
catch(Exception ex)
{
return Content("System Error: "+ex);
}
return Json(true);
}
i want to use this code in my project. but i don't know how to show error message using return Content()
what should i do to show error message in jqgrid
this is my grid:
jQuery(document).ready(function () {
var grid = jQuery("#grid");
grid.jqGrid({
url: '/Admin/GetContactsForJQGrid',
datatype: 'json',
mtype: 'Post',
cellsubmit: 'remote',
cellurl: '/Admin/GridSave',
success:function(){alert(data)},
formatCell: emptyText,
colNames:['Id', '', 'First Name', 'Last Name', 'User Name', 'Password', 'Password Expiry', 'Last Modified', 'Last Modified By', 'Created By', ''],
//['Id', 'Privileges', 'FirstName', 'LastName', 'UserName', 'Password', 'Type', 'Password_Expiry', 'CreatedBy', 'Modified', 'ModifiedBy'],
colModel: [
{ name: 'Id', index: 'Id', width: "30", align: "left", key: true, hidden: true, editrules: { edithidden: true } },
{ name: 'Privileges', index: 'Privileges', width: 70, resizable: false, editable: false, align: 'center', formatter: formatLink, classes: 'not-editable-cell' },
{ name: 'FirstName', index: 'FirstName', align: "left", sorttype: 'text', resizable: true, editable: true, editrules: { required: true } },
{ name: 'LastName', index: 'LastName', align: "left", sorttype: 'text', resizable: true, editable: true },
{ name: 'UserName', index: 'UserName', align: "left", sorttype: 'text', resizable: true, editable: true, editrules: { required: true } },
{ name: 'Password', index: 'Password', align: "left", sorttype: 'text', resizable: true, editable: true, editrules: { required: true } },
{ name: 'Type', width: "100", index: 'Type', sorttype: 'text', align: "left", resizable: true, editable: false, classes: 'not-editable-cell' },
{ name: 'Password_Expiry', index: 'Password_Expiry', align: "left", sorttype: 'date', resizable: true, editable: true, editrules: { required: true }, formatter: 'date', formatoptions: { srcformat: 'm/d/Y', newformat: 'm/d/Y' }, editoptions: { readonly: true, dataInit: function (el) { $(el).datepicker() } } },
{ name: 'CreatedBy', index: 'CreatedBy', sorttype: 'text', align: "left", resizable: true, editable: false, classes: 'not-editable-cell' },
{ name: 'Modified', index: 'Modified', sorttype: 'date', align: "left", resizable: true, editable: false, classes: 'not-editable-cell' },
{ name: 'ModifiedBy', index: 'ModifiedBy', sorttype: 'text', align: "left", resizable: true, editable: false, classes: 'not-editable-cell' }
],
shrinkToFit: true,
//autowidth: true,
pager: '#pager',
height: '100%',
width: "703",
rowNum: 10,
rowList: [10, 20, 50, 100],
sortable: true,
loadonce: false,
ignoreCase: true,
viewrecords: true,
caption: 'Administration',
cellEdit: true,
hidegrid: false,
viewrecords: true,
gridComplete: function () {
var ids = grid.jqGrid('getDataIDs');
for (var i = 0; i < ids.length; i++) {
var isDeleted = grid.jqGrid('getCell', ids[i], 'Delete');
if (isDeleted == 'true') {
grid.jqGrid('setCell', ids[i], 'Delete', '<a href="#" onclick="deleteRow(' + ids[i] + ');"><img src="/Images/delete.png" alt="Delete Row" /></a>');
}
else {
grid.jqGrid('setCell', ids[i], 'Delete', ' ');
//grid.jqGrid('setCell', ids[i], 'Privileges', 'admin');
}
}
}
});
grid.jqGrid('navGrid', '#pager',
{ resize: false, add: false, del: false, search: true, refresh: false, edit: false, alerttext: 'Please select one user' }
).jqGrid('navButtonAdd', '#pager',
{ title: "Add New users", buttonicon: "ui-icon ui-icon-plus", onClickButton: showNewUsersModal, position: "First", caption: "" });
});
what should i do in html to show the error message. i have added this line success:function(){alert(data)},
but alert does't show.
when i edit the record in grid...request goes to cellurl: '/Admin/GridSave',
and from there (in controller,action result) i am returning the error message by using return Content("System Error: "+ex);
but i don't know how exactly use content
in mvc 4 vs 12
any suggestion will be appreciable :)