Javascript 序列不包含使用string.equals的元素
执行以下代码时,我收到错误消息“Sequence contains no elements”:Javascript 序列不包含使用string.equals的元素,javascript,c#,jquery,linq,Javascript,C#,Jquery,Linq,执行以下代码时,我收到错误消息“Sequence contains no elements”: public PartialViewResult access (string usern, string passw) { string pw; var useraccess = (from check in myfirstDB.Users where check.Name.Equals(usern)
public PartialViewResult access (string usern, string passw)
{
string pw;
var useraccess = (from check in myfirstDB.Users
where check.Name.Equals(usern)
select check).Single();
...
}
但是,如果我插入一个文本来代替变量usern
,代码将按预期工作。我确信我的表中存在该记录。我使用jquery调用控制器,如下所示:
$('#access-form').click(function () {
$.ajax({
url: '/home/access',
contentType: 'application/html; charset=utf-8',
type: 'GET',
dataType: 'html'
})
.success(function (result) {
$('#access-field').html(result);
})
.error(function (xhr, status) {
alert(status);
})
});
我看不到您在哪里使用usern的任何参数调用/home/access,因此它将为null。因为它是空的,所以不会返回任何记录。将其更改为“/home/access?usern=foo”或用户名应为的任何名称。我建议在access函数上放置一个断点,并在运行查询之前检查usern的值,如果我修改该函数以返回如下字符串:public string access(string usern,string passw){return“username:+usern+”Password:“+passw;…}它返回我希望传递给函数的字符串变量。(我对分段评论表示歉意)