我有两个表,A和B和一个简单的表X,它们保持两者之间的关系。 X包含AID和BID作为其主键。我应该忽略数据库插入的异常吗?
我使用LINQ到SQL插入像一个关系:
public void InsertRelationship(int y, int z) {
DataContext.X.InsertOnSubmit(new x { AID = y; BID = z });
}
的问题是,两次调用InsertRelationship()可在极端情况下调用这样一个异常会因抛出重复的记录。这对我来说并不重要,因为我知道这种关系是存在的,所以我忽略了这个例外。
是否还好忽略这种情况下的例外或者是它仍然不好的做法?我应该在插入之前检查关系是否已经存在?这会如何影响性能?
更新
重复的调用InsertRelationship()无法避免。它是一个Web应用程序,所以我不能阻止用户打开两个单独的窗口并例如调用该方法两次。该方法不会通过典型的用户交互被调用两次,但我在这里针对极端情况进行编程。重复的百分比可能会很低,但我还不确定确切的数字。
由于这是一个Web应用程序,我无法避免用户可能调用该方法两次的可能性。我已经更新了这个问题。 – 2009-08-24 07:49:44
正如我所说,无论如何,最好检查并向他们返回一个不错的错误。 – 2009-08-24 07:51:06