Ajax / LinqtoSql /多个插入冲突主键

时间:2014-10-13 22:36:39

标签: c# sql linq insert

我尝试在LINQ to SQL

的表中插入多个对象

我用参数调用我的webmethod,用参数数据构建我的LINQ对象。

ID不是递增的,所以我拿最后一个并添加1来创建新ID。

但我收到了一个错误:

"Violation of PRIMARY KEY constraint,Cannot insert duplicate key in object"

我不知道怎么做。

以下是Ajax调用示例:

foreach ...
{
    $.ajax({
        type: 'POST',
        url: 'Default.aspx/Method',
        contentType: 'application/json; charset=utf-8',
        dataType: "json",
        data: JSON.stringify({
        data1: test,
        data2: test2,
         ...
        }),

        success: function (data)
        {
        },
        error: function ()
        {
            alert('La requête n\'a pas abouti');
        }
    });
}

插入(LINQ):

var idNew = (from c in db.OBJECT
                     orderby c.id descending
                     select c.id).First();

        // construct object
        OBJECT obj = new OBJECT
        {
            id = idNew + 1,
            data1 = test1,
            data2 = test2
            ...
        };

        db.OBJECT.InsertOnSubmit(obj);

        // Submit change to the database
        try
        {
            db.SubmitChanges();
        }
        catch (Exception e)
        {
            throw new Exception(e.Message);
        }

我认为第一次插入不起作用但是第二次插入,最后一次ID的选择并不是最后一次。我是否必须更新LINQ架构?怎么样?

0 个答案:

没有答案