【发布时间】:2019-01-26 23:54:46
【问题描述】:
我正在制作一个用于从 MS SQL 服务器添加和读取客户的 Visual Studio 项目。无法看到我通过 Visual Studio 发布的值。
下面是 SQL 代码:
create Table Person
(
Id int PRIMARY KEY,
FirstName varchar (15),
LastName varchar (15),
TaxNbr int,
BirthDate DATETIME,
AktivStatus varchar (15),
);
这是我为客户添加新价值的 C# 部分:
private void Button_AddCustomer(object sender, RoutedEventArgs e)
{
Person customer = new Person();
int number;
customer.FirstName = FirstName.Text.Trim();
customer.LastName = LastName.Text.Trim();
if (int.TryParse(TaxNbr.Text, out number) == false) MessageBox.Show("Must add a valid tax number");
if (number < 0 || number > 999) MessageBox.Show("Invalid Tax Number. Must be between 0 and 999");
else customer.TaxNbr = number;
customer.BirthDate = BirthDate.DisplayDate;
if (Aktiven.IsChecked == true) customer.AktivStatus = "Aktiven";
if (Neaktiven.IsChecked == true)
{
customer.AktivStatus = "Neaktiven";
}
CustomerClass.AddCustomer(customer);
DialogResult = true;
}
我已将它与 SQL 类连接起来:
public static class CustomerClass
{
#region
public static void AddCustomer(Person customer)
{
using (CustomerDataContext conn = new CustomerDataContext())
{
conn.Persons.InsertOnSubmit(customer);
conn.SubmitChanges();
}
}
#endregion
}
请帮忙,我是初学者:)
【问题讨论】:
-
嘿,您是什么意思,在 Visual Studio 中看不到变量的值?此外,当您运行代码并单击按钮时会发生什么?是否将新客户添加到数据库中?
-
是的,但我只能在 SQL 表中看到。
-
当我尝试在 Visual Studio 中添加时,我收到以下消息:“System.Data.SqlClient.SqlException:'违反主键约束'PK__Person__3214EC070A523E0B'。无法在对象'dbo.Person 中插入重复键'。重复键值为 (0)。语句已终止。' "
-
您似乎在一遍又一遍地尝试添加 ID=0 的客户。
-
您应该将 ID 列设置为使用 IDENTITY 自动递增
标签: c# sql-server visual-studio