如何在Visual STudio(c#)中使用Subsonic执行简单更新

时间:2010-12-07 12:55:47

标签: visual-studio subsonic

我有一个非常简单的更新。根据表的ID,我想将布尔列设置为true。问题是我对亚音速的知识就像'漆黑'。

我做了以下但是没有用。

new SubSonic.Update(FundReturn.Schema).Set(FundReturn.Columns.IsDeleted).EqualTo(1)
          .Where(FundReturn.Columns.FundId).IsEqualTo(Convert.ToInt32(row.RecordID)).Execute();

上述内容似乎非常符合逻辑,但不起作用。

我很感激任何帮助

2 个答案:

答案 0 :(得分:2)

在这里猜测,但不是像在数据库中那样将IsDeleted设置为'1',而是将其设置为'true',因为您正在使用的属性可能在生成的代码中被解释为布尔值。 SubSonic将自动为您处理此事件和RecordId转换。

new SubSonic.Update(FundReturn.Schema).Set(FundReturn.Columns.IsDeleted).EqualTo(true)
     .Where(FundReturn.Columns.FundId).IsEqualTo(row.RecordID).Execute();

答案 1 :(得分:0)

哇那里......你可能会想的更简单......

var objActiveRecord = SomeActiveRecordType.SingleOrDefault(o => o.Id == iId);
objActiveRecord.SomeBoolProperty = true;
objActiveRecord.Update();