我有一个强类型数据表,我按主键(FyndBy)搜索一行,如果行存在,我想删除它。从风格的角度来看,您更喜欢以下哪种方法?
MyDataRowType selectedRow = table.FindByTablePrimaryKey(something);
if (selectedRow != null)
selectedRow.Delete();
或
if (table.FindByTablePrimaryKey(something) != null)
table.FindByTablePrimaryKey(something).Delete();
答案 0 :(得分:7)
绝对是第一个。使用第二个将需要搜索表两次,它也更难阅读。 (IMHO)
答案 1 :(得分:1)
一般来说,id说第一个例子..
答案 2 :(得分:1)
选择第一个的技术原因是你使用一个简单的指针(通常只有4个字节的内存)来存储对行的引用 - 也就是说,只使用4个字节就可以获得不扫描表再次占用了大量资源(当然,取决于表格大小)。