ここに、問題をテストして説明するための小さなコードがあります。私は3つのフィールドを持つテーブルPersonを持っています:
- Id
- FirstName(null許容ではありません)
- LastName(null許容ではありません)
ループの中 :
- 最初:最初の行を挿入します...通常、
- 2番目:正しくないアイテムを挿入しようとしExceptionます...通常
- 3番目:3番目の行を挿入しようとします... Exception(2番目の行と同じ)が、値は正しいです。
dataContext後に同じものを使用するために何かすることがありExceptionますか?
public class MyTestClass
{
    private readonly DataModelDataContext _dataContext;
    public MyTestClass()
    {
        _dataContext = new DataModelDataContext();
    }
    public void InsertList()
    {
        List<Person> liste = new List<Person>();
        liste.Add(new Person { FirstName = "AAA", LastName = "BBBB" });
        liste.Add(new Person { FirstName = string.Empty, LastName = null });
        liste.Add(new Person { FirstName = "CCC", LastName = "DDD" });
        foreach (var item in liste)
        {
            try
            {
                _dataContext.Persons.InsertOnSubmit(item);
                _dataContext.SubmitChanges();
            }
            catch (Exception ex)
            {
                Console.WriteLine(ex.Message);
            }
        }
    }
}