- android - 多次调用 OnPrimaryClipChangedListener
- android - 无法更新 RecyclerView 中的 TextView 字段
- android.database.CursorIndexOutOfBoundsException : Index 0 requested, 光标大小为 0
- android - 使用 AppCompat 时,我们是否需要明确指定其 UI 组件(Spinner、EditText)颜色
我想在每次对该文档进行保存或更新操作时自动更新该文档上的 LastUpdatedOn 字段。
有没有某种方法可以自动执行此操作(我使用的是 C# 驱动程序),而不是将这种负担放在执行保存/更新的每一位代码上。
例如在 nHibernate 中你可以使用 interceptors .在数据库或驱动程序级别是否有类似的技术可用?
最佳答案
interceptors. Is there a similar technique available at either the database or driver level?
在 mongodb c# 驱动程序和 mongodb 中都没有这样的机制。为了满足您的需求,您可以简单地包装所有 Save
、Insert
、原子 Update
方法并在那里设置 LastUpdatedOn
字段。
例如,您可以为您的存储库、服务提供基类,无论您将在何处包装您的 Save 方法:
public abstract class BaseMongoService<T> where T : BaseDocument
{
protected abstract MongoCollection Items { get; }
public virtual SafeModeResult Save(T document)
{
document.LastUpdatedOn = DateTime.Now;
return Items.Save(document);
}
public virtual void Update(IMongoQuery query, IMongoUpdate update)
{
update = update.Set("LastUpdatedOn", DateTime.Now);
Items.Update(query, update);
}
}
那么您需要从 BaseDocument
继承所有文档(或强制它们实现某些接口(interface))以添加所有文档都应包含 LastUpdatedOn 字段的约束。
public class BaseDocument
{
public DateTime LastUpdatedOn {get;set;}
}
然后只需继承上面的所有数据访问类,并使用基类的 Save、Update 方法。
注意:所有这些代码都没有经过测试,这只是我认为可以完成的方式。
关于c# - 我可以自动填充 MongoDB 中的 LastUpdated 字段吗(使用 C# 驱动程序),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9111232/
我想使用Grails域的lastUpdated字段来实现“最近更改了哪些对象” View 。但是,我的域有一个“多方关联”,当添加某些内容时,该关联会导致lastUpdated值被更新。 例如。: c
我有一个带有 m2eclipse 和 subversive 的 Eclipse 设置。我从svn导入了maven2项目。但我收到错误消息,提示缺少一大堆工件(例如:缺少工件 org.springfra
我在 pom.xml 中有以下依赖项: 3.1.0 junit junit 3.8.1 test
有大量对象。集合是动态的:对象可以随时添加或删除。我们称对象总数为 N。 每个对象都有两个属性:上次更新的质量 (M) 和时间 (T)。 每隔 X 分钟,应从中选择一小批进行处理,这会将它们的 T 更
我已经将 com.spotify:dockerfile-maven-plugin:1.4.3 添加到我的 POM 中,它由于以下原因,无法完成 [INFO] --- dockerfile-maven-
我的 Elasticsearch 映射大致如下所示: { "myIndex": { "mappings": { "myType": { "_timestamp"
如何从表中选择最近更新的行。我的语法似乎有问题。 最佳答案 如果您需要最后更新的最新记录,那么您可以试试这个:: SELECT * FROM 'table' order by lastupdate
我有一个父域类,它有一个 hasMany另一个域类。父域和子域类都有 lastUpdated和 dateCreated领域。我的问题是,当我更新子域类时,我需要父域类来反射(reflect)该更改并更
据我所知,Database.Persist 不处理任何自动更新字段 ( Yesod Book Persistent )。 但存在一个特殊情况,它是相关的(至少对我来说:P),它是 lastUpdate
我一直在思考这个问题一段时间,想不出一个可以接受的解决方案。我有一个计划变得非常大的应用程序。因此,我试图将其模块化。它基于MVC4。我还没有决定自己使用 ORM 或映射所有内容。我想要以下结构: -
情况: 我有一个包含 10 个工作表和 15 个用户登录并修改它的电子表格。 脚本功能: 当有人修改任何列中的任何行时,此脚本将使用 DateTime 更新 lastcolumn 并插入带有进行该修改
当我尝试在本地存储库中安装 Maven 项目时,我注意到 pom 和 jar 文件具有 .lastUpdated 扩展名。由于这个问题,我无法构建依赖于它的项目。 您能解释一下为什么会发生这种情况吗?
我目前正在从事一个 Grails 项目,该项目以前是用其他语言编写的。所以我们有这个数据库,它的表名和列名,我们不应该改变。现在的问题是,用于时间戳的列名不是 date_created 或 last_
我定义了一个表(见下面的代码片段)。如何添加约束或其他任何内容,以便在行发生更改时自动更新 LastUpdate 列? CREATE TABLE dbo.Profiles ( User
我最近刚刚将我们的 Kentico CMS 升级到最新的修补程序。推送到生产服务器后,我在两台服务器上都收到以下错误。 有没有其他人解决过这个错误?我认为这与缓存有关,但我无法在此处指出问题所在。 我
我想在每次对该文档进行保存或更新操作时自动更新该文档上的 LastUpdatedOn 字段。 有没有某种方法可以自动执行此操作(我使用的是 C# 驱动程序),而不是将这种负担放在执行保存/更新的每一位
简短的问题: 怎么做 this在 MVC.NET 中? 长版问题: 我尝试使用 SQL 表中的 DateTime 列进行版本跟踪(这本身是作为在表的 editview 回传后重新附加 Linq2Sql
在这段代码中,我收到来自 PSScriptAnalyzer 的“UseDeclaredVarsMoreThanAssignments”警告 $lastUpdate = $false; $shouldU
我最近使用 grails-2.2.4 更新了我的 grails 应用程序,从使用 mysql 到 mariadb 版本 10.0.15-MariaDB-wsrep grails,我正在使用 galer
我是一名优秀的程序员,十分优秀!