我正在为我的一个项目开发一个职业网站。我正在使用Visual Studio 2010和ASP.NET Web窗体进行编码。
我的问题是我有一个名为Companies
的表,其中包含Company ID, Company Name, Company Address
列和Company Phone
列。 CompanyID
是我的主要关键。我正在尝试使用Linq-to-SQL将新公司插入此表。
当我执行以下代码时,如果数据库为空,则代码正常工作,但如果不是,则无法自动递增CompanyID
并给出数据库错误。
我该如何解决这个问题?
提前致谢。
protected void Button1_Click(object sender, EventArgs e)
{
Label_error.Text = "";
Page.Validate();
if (Page.IsValid)
{
CareerDataContext db = new CareerDataContext();
Company newCompany = new Company { coName = TextBox_coName.Text, coAddress = TextBox_coAddress.Text, coPhone = int.Parse(TextBox_coPhone.Text) };
Company fCompany = db.Companies.SingleOrDefault(company => company.coName.Equals(TextBox_coName.Text));
if (fCompany == null)
{
db.Companies.InsertOnSubmit(newCompany);
db.SubmitChanges();
}
else
Label_error.Text = "This username is already in use";
}
}
答案 0 :(得分:1)
如果您的CompanyID是uniqueidentifier,那么您可以传递Guid.NewGuid()
;
例如:
Company newCompany = new Company { coID = Guid.NewGuid(), coName = TextBox_coName.Text, coAddress = TextBox_coAddress.Text, coPhone = int.Parse(TextBox_coPhone.Text) };