我试图保存我的新数据库条目,但 ID 想要增加。
这是表格列:
我正在使用实体框架和 Windows 窗体。添加我的 postgresql 数据库后,它创建了 Procesor 类。
public partial class Procesor
{
public int ID { get; set; }
public string Naziv_Procesora { get; set; }
public Nullable<int> Godina_Proizvodnje { get; set; }
public string Naziv_Proizvodaca { get; set; }
public Nullable<int> Broj_Jezgri { get; set; }
public Nullable<double> Takt_Procesora { get; set; }
public Nullable<decimal> Cijena_Procesora { get; set; }
public virtual Konfiguracija_Racunala Konfiguracija_Racunala { get; set; }
}
}
之后我创建了用于生成绑定列表并插入数据库的新类
class Procesori
{
public BindingList<Procesor> DohvatiProcesore()
{
BindingList<Procesor> listaProcesora;
using (RacunalaEntities enteties = new RacunalaEntities())
{
listaProcesora = new BindingList<Procesor>(enteties.Procesors.ToList());
}
return listaProcesora;
}
public void unosProcesora(string naziv, int godina, string proizvodac, decimal cijena, int jezgre, double takt)
{
using (RacunalaEntities enteties = new RacunalaEntities())
{
Procesor procesor = new Procesor();
procesor.Naziv_Procesora = naziv;
procesor.Naziv_Proizvodaca = proizvodac;
procesor.Godina_Proizvodnje = godina;
procesor.Broj_Jezgri = jezgre;
procesor.Takt_Procesora = takt;
procesor.Cijena_Procesora = cijena;
enteties.Procesors.Add(procesor);
enteties.SaveChanges();
}
}
}
在我的表单中,我想向数据库添加新的处理器,但我不能
我的表单代码:
public partial class Form1 : Form
{
RacunalaEntities context = new RacunalaEntities();
Procesori procesori = new Procesori();
public Form1()
{
InitializeComponent();
dataGridView1.DataSource = procesori.DohvatiProcesore();
}
private void btnDodajProcesore_Click(object sender, EventArgs e)
{
string nazivProcesora = txtNazivProcesora.Text;
int godinaProizvodnje = int.Parse(txtGodinaProizvodnje.Text);
string nazivProizvodaca = txtNazivProizvodaca.Text;
decimal cijenaProcesora = decimal.Parse(txtCijenaProcesora.Text);
int brojJezgri = int.Parse(txtBrojJezgri.Text);
double taktProcesora = double.Parse(txtTaktProcesora.Text);
procesori.unosProcesora(nazivProcesora,godinaProizvodnje,nazivProizvodaca,cijenaProcesora,brojJezgri,taktProcesora);
MessageBox.Show("Podaci su spremljeni");
}
}
错误代码:
<块引用>PostgresException: 428C9: 无法插入到“ID”列中
答案 0 :(得分:0)
尝试使用以下属性装饰 Id 属性。
[Key]
[DatabaseGenerated(DatabaseGeneratedOption.Identity)]
public int Id { get; set; }
答案 1 :(得分:0)