Asp.net mvc 3 如何使用EF模型优先方法检查唯一约束?
我正在使用MVC3开发网站,使用模型优先方法 我的“雇员”模型中有一个字段是“用户名”并且该字段既不是唯一字段,也不是外键。我的应用程序要求Asp.net mvc 3 如何使用EF模型优先方法检查唯一约束?,asp.net-mvc-3,entity-framework,ef-model-first,Asp.net Mvc 3,Entity Framework,Ef Model First,我正在使用MVC3开发网站,使用模型优先方法 我的“雇员”模型中有一个字段是“用户名”并且该字段既不是唯一字段,也不是外键。我的应用程序要求用户名应该是唯一的,如果用户输入重复的值,则会显示错误消息 对于我的mvc项目,我创建了实体框架作为类库,并在mvc项目中添加了它的引用,用于访问模型类,所有这些都与我为我的网站创建的实体框架相关。 如何使用EF model first方法在模型本身中实现这一点?我认为您可以使用模型中用户字段上方的[Key]符号来设置此要求。但是我不确定:)我在我的项目中遇
用户名应该是唯一的,如果用户输入重复的值,则会显示错误消息
对于我的mvc项目,我创建了实体框架作为类库,并在mvc项目中添加了它的引用,用于访问模型类,所有这些都与我为我的网站创建的实体框架相关。
如何使用EF model first方法在模型本身中实现这一点?我认为您可以使用模型中用户字段上方的[Key]符号来设置此要求。但是我不确定:)我在我的项目中遇到了这种类型的问题。我正在开发asp.net应用程序,它是一个工作门户,所以应聘者的电子邮件Id是唯一的,所以我这样检查并解决了这个问题。在下面 在形式上
<div id="dvErrorMessage" style="display: none;" title="Message">
<p>
Please Registered with different EmailId.This is allready exists.</p>
</div>
$("#txtEmailID").blur(function (e) {
if (document.getElementById("txtEmailID").value == "") {
document.getElementById("txtEmailID").focus();
document.getElementById("lblEmailID").innerHTML = "Please Enter Email ID";
document.getElementById("imgEmailID").src = "images/cross-sign.png";
}
else {
e.preventDefault();
var EmailID = $("#txtEmailID").val();
var url = "JsonData.asmx/GetCompanyEmailAccessbility";
var emailformate = /^([A-Za-z0-9_\-\.])+\@([A-Za-z0-9_\-\.])+\.([A-Za-z]{2,4})$/;
$.ajax({
type: "POST",
url: url,
contentType: "application/json; charset=utf-8",
dataType: 'json',
data: '{EmailID:"' + EmailID + '"}',
success: function (msg) {
var data = msg.d;
if (data == 0) {
if (emailformate.test(document.getElementById("txtEmailID").value) == false) {
document.getElementById("imgEmailID").src = "images/cross-sign.png";
document.getElementById("lblEmailID").innerHTML = "Please Enter Valid Email ID";
document.getElementById("txtEmailID").focus();
return false;
}
else {
document.getElementById("imgEmailID").src = "images/right-sign.png"
}
}
else {
if ($("#dvErrorMessage").css('display') == 'none') {
$("#dvErrorMessage").css('display', 'block');
$("#dvErrorMessage").dialog({
autoOpen: false,
modal: true,
width: 400,
resizable: false,
height: 200,
buttons: {
"OK": function (e) {
e.preventDefault();
$(this).dialog('close');
document.getElementById("txtEmailID").focus();
document.getElementById("imgEmailID").src = "images/cross-sign.png";
}
}
});
$("#dvErrorMessage").dialog('open');
}
else {
$("#dvErrorMessage").dialog({
autoOpen: false,
modal: true,
width: 400,
resizable: false,
height: 200,
buttons: {
"OK": function (e) {
e.preventDefault();
$(this).dialog('close');
document.getElementById("txtEmailID").focus();
document.getElementById("imgEmailID").src = "images/cross-sign.png";
}
}
});
$("#dvErrorMessage").dialog('open');
}
}
}
});
}
});
}
请使用不同的EmailId注册。这是allready
$(“#txtEmailID”).blur(函数(e){
if(document.getElementById(“txtEmailID”).value==“”){
document.getElementById(“txtEmailID”).focus();
document.getElementById(“lblEmailID”).innerHTML=“请输入电子邮件ID”;
document.getElementById(“imgEmailID”).src=“images/cross-sign.png”;
}
否则{
e、 预防默认值();
var EmailID=$(“#txtEmailID”).val();
var url=“JsonData.asmx/getcompanyemailaccessibility”;
var emailformate=/^([A-Za-z0-9\-\.])+\@([A-Za-z0-9\-\.])+\.([A-Za-z]{2,4})$/;
$.ajax({
类型:“POST”,
url:url,
contentType:“应用程序/json;字符集=utf-8”,
数据类型:“json”,
数据:“{EmailID:”+EmailID+“}”,
成功:功能(msg){
var数据=msg.d;
如果(数据==0){
if(emailFormatte.test(document.getElementById(“txtEmailID”).value)==false){
document.getElementById(“imgEmailID”).src=“images/cross-sign.png”;
document.getElementById(“lblEmailID”).innerHTML=“请输入有效的电子邮件ID”;
document.getElementById(“txtEmailID”).focus();
返回false;
}
否则{
document.getElementById(“imgEmailID”).src=“images/right-sign.png”
}
}
否则{
if($(“#dvErrorMessage”).css('display')=='none'){
$(“#dvErrorMessage”).css('display','block');
$(“#dvErrorMessage”)。对话框({
自动打开:错误,
莫代尔:是的,
宽度:400,
可调整大小:false,
身高:200,
按钮:{
“OK”:功能(e){
e、 预防默认值();
$(this.dialog('close');
document.getElementById(“txtEmailID”).focus();
document.getElementById(“imgEmailID”).src=“images/cross-sign.png”;
}
}
});
$(“#dvErrorMessage”)。对话框('打开');
}
否则{
$(“#dvErrorMessage”)。对话框({
自动打开:错误,
莫代尔:是的,
宽度:400,
可调整大小:false,
身高:200,
按钮:{
“OK”:功能(e){
e、 预防默认值();
$(this.dialog('close');
document.getElementById(“txtEmailID”).focus();
document.getElementById(“imgEmailID”).src=“images/cross-sign.png”;
}
}
});
$(“#dvErrorMessage”)。对话框('打开');
}
}
}
});
}
});
}
在我的web服务中
public List<CompanyData> GetCompanyEmailAccessbility(string EmailID)
{
PresenterData objpreseData = new PresenterData();
LMGDAL.db_LMGEntities dbData = new db_LMGEntities();
var dataAccessibility = dbData.tblCompanies.Where(x => x.CompanyEmailId == EmailID).ToList().Select(item => new CompanyData { EmailID = item.CompanyEmailId }).ToList();
return dataAccessibility.ToList();
}
public List getcompanyemailaccessibility(字符串EmailID)
{
PresenterData objpreseData=新PresenterData();
LMGDAL.db_lmgenties dbData=新的db_lmgenties();
var dataAccessibility=dbData.tblCompanies.Where(x=>x.CompanyEmailId==EmailID).ToList().Select(item=>newcompanydata{EmailID=item.CompanyEmailId}).ToList();
返回dataAccessibility.ToList();
}