gpt4 book ai didi

c# - Linq Asp.net代码优化

转载 作者:行者123 更新时间:2023-11-30 15:11:24 25 4
gpt4 key购买 nike

我使用 AdventureWorks 作为数据库来熟悉 linq 和 asp.net 界面,想知道是否有人可以看看我在 C# 中的代码,并给我一种优化的方式来在搜索和搜索时填充结果然后在提交时更新。

protected void btnSearch_Click(object sender, EventArgs e)
{
TestDataClassDataContext dc = new TestDataClassDataContext();
Individual ind = new Individual();
var q = from Individual in dc.Individuals
where Individual.CustomerID == Convert.ToInt32(txtCustID.Text)
select Individual;
if (q.Count() > 0)
{
ind = q.First();
Contact con = new Contact();
var q2 = from Contact in dc.Contacts
where Contact.ContactID == ind.ContactID
select Contact;
if (q2.Count() > 0)
{
con = q2.First();
txtFname.Text = con.FirstName;
txtLname.Text = con.LastName;
txtMname.Text = con.MiddleName;
txtPhone.Text = con.Phone;
txtPword.Text = con.PasswordSalt;
txtSuff.Text = con.Suffix;
txtTitle.Text = con.Title;
txtEmail.Text = con.EmailAddress;
ddlEmailPromo.SelectedValue = con.EmailPromotion.ToString();

}
}
}

protected void btnSubmit_Click(object sender, EventArgs e)
{
TestDataClassDataContext dc = new TestDataClassDataContext();
Individual ind = new Individual();
var q = from Individual in dc.Individuals
where Individual.CustomerID == Convert.ToInt32(txtCustID.Text)
select Individual;
if (q.Count() > 0)
{
ind = q.First();
Contact con = new Contact();
var q2 = from Contact in dc.Contacts
where Contact.ContactID == ind.ContactID
select Contact;
if (q2.Count() > 0)
{
con = q2.First();
con.FirstName = txtFname.Text;
con.LastName = txtLname.Text;
con.MiddleName = txtMname.Text;
con.Phone = txtPhone.Text;
con.PasswordSalt = txtPword.Text;
con.Suffix = txtSuff.Text;
con.Title = txtTitle.Text;
con.EmailAddress = txtEmail.Text ;
ddlEmailPromo.SelectedValue = con.EmailPromotion.ToString();

}
}

最佳答案

在一个查询中:

TestDataClassDataContext dc = new TestDataClassDataContext();
var con = (from individual in dc.Individuals
join contact in dc.Contacts on individual.ContactID equals contact .ContactID
where individual.CustomerID == Convert.ToInt32(txtCustID.Text)
select contact).FirstOrDefault();

if(con == null) return;

txtFname.Text = con.FirstName;
txtLname.Text = con.LastName;
txtMname.Text = con.MiddleName;
txtPhone.Text = con.Phone;
txtPword.Text = con.PasswordSalt;
txtSuff.Text = con.Suffix;
txtTitle.Text = con.Title;
txtEmail.Text = con.EmailAddress;
ddlEmailPromo.SelectedValue = con.EmailPromotion.ToString();

在提交更改功能中使用相同的查询!

关于c# - Linq Asp.net代码优化,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2419604/

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