C# 检查列表包含字符串
拥有一个将用于远程验证函数但无法使其工作的类C# 检查列表包含字符串,c#,json,linq,C#,Json,Linq,拥有一个将用于远程验证函数但无法使其工作的类 [HttpPost] public JsonResult doesUserNameExist(string Forename) { IEnumerable<SelectListItem> user = new List<SelectListItem>(); using (EIPInternalEntities ctx = new EIPInternalEntities()) { user
[HttpPost]
public JsonResult doesUserNameExist(string Forename)
{
IEnumerable<SelectListItem> user = new List<SelectListItem>();
using (EIPInternalEntities ctx = new EIPInternalEntities())
{
user = new SelectList(ctx.Database
.SqlQuery<string>("EXEC dbo.uspGetLkUpJobTitle")
.ToList());
}
var userlist = user.ToList();
//return Json(user == null);
return Json(!userlist.Contains(Forename));
}
然后是!用户列表
。被标记为说
SelectList不包含包含的定义
你可以试试这个:
!userlist.Any(item => item.Text == Forename);
userlist
是SelectListItem
对象的列表。每个SelectListItem
都有三个属性,Name
、Value
和Selected
。我认为很明显,您想要查找文本。如果要查找该值,只需使用项重写上述内容。value
您可以尝试以下方法:
!userlist.Any(item => item.Text == Forename);
userlist
是SelectListItem
对象的列表。每个SelectListItem
都有三个属性,Name
、Value
和Selected
。我认为很明显,您想要查找文本。如果要查找值,只需使用item.value重写上述内容
return Json(!userlist.Any(x => x.Text == Forename));
试试这个
return Json(!userlist.Any(x => x.Text == Forename));
首先,为什么要使用SelectList
?使用一个常规的列表
嗨,谢谢,你能再详细一点吗?我对c'和MVCW还很陌生,你首先为什么要使用SelectList
?使用一个常规的列表
嗨,谢谢,你能再详细一点吗?我对这里的c'和mvctypo非常陌生x.Text==Forename
@stefankmitph非常感谢您发现了这一点。“无法将lambda表达式转换为类型”SelectListItem“因为它不是委托类型。下面解决了这个问题,谢谢你欢迎,但我不明白你的意思。你有没有试过上面的方法,但没有效果。你纠正了什么,它运行了,万一这是错误的?提前谢谢。是的,两个都给出了lambda转换的错误。stefankmitph的答案很有效,尽管我正在添加,以防您进一步研究:)此处键入x.Text==Forename
@stefankmitph非常感谢您发现了这一点。“无法将lambda表达式转换为类型”SelectListItem“因为它不是委托类型。下面解决了这个问题,谢谢你欢迎,但我不明白你的意思。你有没有试过上面的方法,但没有效果。你纠正了什么,它运行了,万一这是错误的?提前谢谢。是的,两个都给出了lambda转换的错误。stefankmitph的回答很有效,尽管我补充道,以防你进一步研究:)非常感谢!确实尝试了。但无法使其工作必须使用x=>x.text部分。非常感谢!确实尝试了.Any,但无法使其工作,必须使用x=>x.text部分。