gpt4 book ai didi

c# - 如何在 ASP.net Web 表单应用程序中处理 False/Empty 查询?

转载 作者:搜寻专家 更新时间:2023-10-30 22:11:26 25 4
gpt4 key购买 nike

我正在 Visual Studio 中构建一个 Web 表单应用程序,并且有许多按钮功能允许用户从我的数据库中添加、更改和删除。

所有功能都按预期方式工作直到用户输入错误信息或未输入任何内容

这是我得到的错误

enter image description here

我自己做了一些研究,但我仍然不确定如何解决它,希望得到一些帮助

这是有问题的代码

   public partial class DeleteCharacters : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{

}
private MarvelModelContext context = new MarvelModelContext();

protected void btnDeleteId_Click(object sender, EventArgs e)
{
int id = System.Convert.ToInt32(txtId.Text);
string Sname = SNameT.Text;
Character CRead = context.Character.FirstOrDefault(c => c.CharacterId == id && c.Superhero == Sname);
context.Character.Remove(CRead);//Error Pops up here

context.SaveChanges();

//Clear Feilds
txtId.Text = "";
SNameT.Text = "";
}

}

最佳答案

正如@MKS 建议的那样,如果您使用 FirstOrDefault,则必须检查 null .如果在您的 lambda 表达式中找不到匹配项,则返回 null。因此,更新后的方法应如下所示。

 public partial class DeleteCharacters : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{

}
private MarvelModelContext context = new MarvelModelContext();

protected void btnDeleteId_Click(object sender, EventArgs e)
{
int id = System.Convert.ToInt32(txtId.Text);
string Sname = SNameT.Text;
Character CRead = context.Character.FirstOrDefault(c => c.CharacterId == id && c.Superhero == Sname);

if(CRead != null) // added this condition
{
context.Character.Remove(CRead);

context.SaveChanges();

//Clear Feilds
txtId.Text = "";
SNameT.Text = "";
}
}
}

关于c# - 如何在 ASP.net Web 表单应用程序中处理 False/Empty 查询?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27413395/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com