Jquery 如何使用GUID主键将数据加载到数据表中?
在我的项目中,我使用了Jquery 如何使用GUID主键将数据加载到数据表中?,jquery,asp.net-mvc,datatable,guid,Jquery,Asp.net Mvc,Datatable,Guid,在我的项目中,我使用了datatablelibrary来显示数据。但我有一个问题。事实上,如果我有主键类型为int的数据。它工作正常,但我有“guid”主键。它将显示一些错误。我已使用标识进行授权,正如您所知,标识已将guid类型用于主键。当我要从控制器datatable获取数据时,由于UserId是“guid”的类型,因此UserId有问题 这是一个简单的GetUsers()controller示例,我使用了int的userId类型 public ActionResult GetUsers(
datatable
library来显示数据。但我有一个问题。事实上,如果我有主键类型为int的数据。它工作正常,但我有“guid”主键。它将显示一些错误。我已使用标识进行授权,正如您所知,标识已将guid
类型用于主键。当我要从控制器datatable
获取数据时,由于UserId是“guid
”的类型,因此UserId有问题
这是一个简单的GetUsers()
controller示例,我使用了int的userId类型
public ActionResult GetUsers()
{
List<UserViewModel> userView=new List<UserViewModel>();
var userNew=new UserViewModel
{
UserId = 1,
UserName="info.98@gmail.com",
FirstName="alex",
LastName="leyonan",
Gender=true,
Email ="info.2000@gmail.com",
IsActive =false,
PhoneNumber="111111111111",
Address="USA",
};
userView.Add(userNew);
return Json(new { data = userView }, JsonRequestBehavior.AllowGet);
}
public ActionResult GetUsers()
{
List userView=new List();
var userNew=newuserviewmodel
{
UserId=1,
UserName=“info。98@gmail.com",
FirstName=“alex”,
LastName=“leyonan”,
性别=正确,
Email=“info。2000@gmail.com",
IsActive=false,
PhoneNumber=“111111111”,
地址=“美国”,
};
添加(userNew);
返回Json(新的{data=userView},JsonRequestBehavior.AllowGet);
}
==================================================
$(document).ready(function () {
var oTable = $('#example').DataTable({
"ajax": "/Users/GetUsers",
"columns": [
{ "data": "UserName", },
{ "data": "FirstName", },
{ "data": "LastName", },
{ "data": "Gender", },
{ "data": "Email", },
{ "data": "IsActive", },
{ "data": "PhoneNumber", },
{ "data": "Address", },
{
"data": "UserId", "width": "50px", "render": function (data) {
return '<a class="popup" href="/Users/Edit/' + data + '">Edit</a>';
}
},
{
"data": "UserId", "width": "50px", "render": function (data) {
return '<a class="popup" href="/Users/Delete/' + data + '">Delete</a>';
}
}
]
});
});
$(文档).ready(函数(){
var oTable=$(“#示例”).DataTable({
“ajax”:“/Users/GetUsers”,
“栏目”:[
{“数据”:“用户名”,},
{“数据”:“名字”,},
{“数据”:“LastName”,},
{“数据”:“性别”},
{“数据”:“电子邮件”,},
{“数据”:“IsActive”,},
{“数据”:“电话号码”,},
{“数据”:“地址”,},
{
“数据”:“用户ID”,“宽度”:“50px”,“渲染”:函数(数据){
返回“”;
}
},
{
“数据”:“用户ID”,“宽度”:“50px”,“渲染”:函数(数据){
返回“”;
}
}
]
});
});
用户ID必须为字符串类型
public ActionResult GetUsers()
{
List<UserViewModel> userView=new List<UserViewModel>();
var userNew=new UserViewModel
{
UserId = Guid.NewGuid().ToString(), //Convert into string
UserName="info.98@gmail.com",
FirstName="alex",
LastName="leyonan",
Gender=true,
Email ="info.2000@gmail.com",
IsActive =false,
PhoneNumber="111111111111",
Address="USA",
};
userView.Add(userNew);
return Json(new { data = userView }, JsonRequestBehavior.AllowGet);
}
public ActionResult GetUsers()
{
List userView=new List();
var userNew=newuserviewmodel
{
UserId=Guid.NewGuid().ToString(),//转换为字符串
UserName=“info。98@gmail.com",
FirstName=“alex”,
LastName=“leyonan”,
性别=正确,
Email=“info。2000@gmail.com",
IsActive=false,
PhoneNumber=“111111111”,
地址=“美国”,
};
添加(userNew);
返回Json(新的{data=userView},JsonRequestBehavior.AllowGet);
}
将这一行“函数(数据、类型、完整、元)”放在渲染函数中并使用完整参数可能会解决您的问题
Ex:
$(document).ready(function () {
var oTable = $('#example').DataTable({
"ajax": "/Users/GetUsers",
"columns": [
{ "data": "UserName", },
{ "data": "FirstName", },
{ "data": "LastName", },
{ "data": "Gender", },
{ "data": "Email", },
{ "data": "IsActive", },
{ "data": "PhoneNumber", },
{ "data": "Address", },
{
"data": "UserId", "width": "50px", "render":
//change
function(data, type, full, meta) {
return '<a class="popup" href="/Users/Edit/' + data + '">Edit</a>';
}
},
{
"data": "UserId", "width": "50px", "render":
//change
function(data, type, full, meta) {
return '<a class="popup" href="/Users/Delete/' + data + '">Delete</a>';
}
}
]
});
});
$(文档).ready(函数(){
var oTable=$(“#示例”).DataTable({
“ajax”:“/Users/GetUsers”,
“栏目”:[
{“数据”:“用户名”,},
{“数据”:“名字”,},
{“数据”:“LastName”,},
{“数据”:“性别”},
{“数据”:“电子邮件”,},
{“数据”:“IsActive”,},
{“数据”:“电话号码”,},
{“数据”:“地址”,},
{
“数据”:“用户ID”,“宽度”:“50px”,“渲染”:
//改变
功能(数据、类型、完整、元){
返回“”;
}
},
{
“数据”:“用户ID”,“宽度”:“50px”,“渲染”:
//改变
功能(数据、类型、完整、元){
返回“”;
}
}
]
});
});
注意:如果上述方法无法解决问题,请参阅下面链接中的注释,您会有一个想法
有用链接:使用Guid()作为Id时会出现什么错误?它会显示一些错误。错误是什么?
$(document).ready(function () {
var oTable = $('#example').DataTable({
"ajax": "/Users/GetUsers",
"columns": [
{ "data": "UserName", },
{ "data": "FirstName", },
{ "data": "LastName", },
{ "data": "Gender", },
{ "data": "Email", },
{ "data": "IsActive", },
{ "data": "PhoneNumber", },
{ "data": "Address", },
{
"data": "UserId", "width": "50px", "render":
//change
function(data, type, full, meta) {
return '<a class="popup" href="/Users/Edit/' + data + '">Edit</a>';
}
},
{
"data": "UserId", "width": "50px", "render":
//change
function(data, type, full, meta) {
return '<a class="popup" href="/Users/Delete/' + data + '">Delete</a>';
}
}
]
});
});