0

我想使用 linq 将数据插入到我的数据库中。我按照说明进行操作,然后根据以下说明在此处进行一些编码

 private void addNasabah()
    {
        char gender = cekRadio();

        customer customer = new customer()
        {
            nomor_customer = int.Parse(innomor.Text),
            nama = innama.Text.ToString(),
            jenis_kelamin = gender,
            alamat = inalamat.Text.ToString(),
            nomor_telepon = innomor.Text.ToString(),
            saldo = 0
        };

        dc.customers.InsertOnSubmit(customer);
        try
        {
            dc.SubmitChanges();
            cmd.cetakSukses("Berhasil Menyimpan Nasabah", "Tambah Nasabah");
            innomor.Text = genNextId().ToString();
        }
        catch (Exception e)
        {
            cmd.cetakGagal(e.ToString(), "Tambah Nasabah");                                
        }

    }

这是cekRadio()方法

 private char cekRadio()
    {
        if (radioButton1.Checked)
        {
            return 'p';
        }
        else
        {
            return 'w';
        }
    }

但我遇到了一些错误,这是错误 错误

图片显示“输入字符串的格式不正确”。

预期的字符串正确格式是什么?

这是我的genNextId()方法

  private int genNextId()
    {
        int id = (from a in dc.customers
                  select a.nomor_customer).Max();

        return id+1;
    }

我尝试运行该应用程序,消息框显示“Berhasil Menyimpan Nasabah”、“Tambah Nasabah”,但随后我检查了我的数据库,输入的数据不存在。

这是我customer在数据库中的表 缺少属性

4

1 回答 1

0

在这一行旁边放一个断点Customer customer = new Customer(),您现在可以检查每个变量的值是什么,int.Parse()如果字符串无法解析为 integer ,这可能是一个问题。

另外,请确保 的属性Customer预期的类型jenis_kelamin,例如检查。

另一个(与错误无关)点,如果您使用Object Initializernew Object {},那么您可以删除括号 (),这样您就可以...

Customer customer = new Customer { ..properties.. };

编辑:鉴于您发布的一些评论,我需要指出您检索Next ID的方式是一种不好的方法。我在上面的评论之一中指定您应该在 SQL 中使用Identity字段,这样您设置seedand increment,SQL 将代表您生成下一个 ID。

于 2013-08-03T12:32:32.077 回答