C# 如何避免剑道格网中的重复
这是我的代码:C# 如何避免剑道格网中的重复,c#,asp.net-mvc,kendo-ui,kendo-grid,C#,Asp.net Mvc,Kendo Ui,Kendo Grid,这是我的代码: columns.Bound(c => c.Id).Hidden(); columns.Bound(c => c.Name); columns.Bound(c => c.IsActive).Title("Active Status").ClientTemplate("<input type='checkbox' name='active' ${ IsActive == true ? checked='checked' : ''} enabled value=
columns.Bound(c => c.Id).Hidden();
columns.Bound(c => c.Name);
columns.Bound(c => c.IsActive).Title("Active Status").ClientTemplate("<input type='checkbox' name='active' ${ IsActive == true ? checked='checked' : ''} enabled value='#= IsActive#' />");
用于检查重复值的函数:
function index(dataItem) {
var grid = $("#grid").data("kendoGrid");
var gridData = grid._data;
console.log("gridData>>", gridData);
console.log("dataItem>>", dataItem);
if (grid.dataItem(grid.select()) != null || grid.dataItem(grid.select()) != undefined) {
selectedItem = grid.dataItem(grid.select());
console.log("selectedItem>>", selectedItem.ProviderTypeName);
for (item in gridData) {
console.log("grid[item].ProviderTypeName>>", gridData[item].ProviderTypeName);
console.log("selectedItem", selectedItem.ProviderTypeName);
if (gridData[item].ProviderTypeName == selectedItem.ProviderTypeName && gridData[item].Id != selectedItem.Id) {
//e.preventDefault();
grid.bind("dataBinding", function (e) { e.preventDefault(); });
grid.unbind("dataBinding");
grid.refresh();
alert("Duplicates not allowed");
return false;
}
}
}
return true;
}
这些是我的代码。我想防止在剑道网格中输入重复的值。谁能告诉我我现在做的是正确的,还是应该做些别的。我想在Create和Update中停止重复的值,即使在我的剑道网格中也是如此。应该通过添加网格模型(实体框架类)和表设计(Create TABLE语句)的代码来进一步详细说明问题的环境 防止重复通常作为服务器端功能以数据库中表约束的形式实现。您似乎希望防止输入重复的
名称
根据应用程序的构建方式(代码优先/数据优先),您可能需要
具有唯一注释的模型类字段
[Index("Unique_Name", 1, IsUnique = true)]
public string Name { get; set; }
或表约束
[name] VARCHAR (40) NOT NULL,
CONSTRAINT [unique_name] UNIQUE NONCLUSTERED ([name] ASC)
可以在客户端执行吗?我们如何向用户显示他输入了重复的值。我是说信息?在Telerik论坛上搜索一下可以给你更多的见解。我以前检查过相同的链接。出现警报消息,但发生保存事件。这就是问题所在。另外,e.model.UserName抛出一个无法找到的错误。客户端检查的动机是什么?如果检查没有在服务器端完成,理论上的黑帽参与者可能会创建一个副本(使用绕过网格和ui页面的方法)。
[name] VARCHAR (40) NOT NULL,
CONSTRAINT [unique_name] UNIQUE NONCLUSTERED ([name] ASC)