c# - 如何暂时排除属性(property)被保存到 RavenDb?

标签 c# asp.net ravendb

我需要将用户输入的一些数据存储到 RavenDb。但是当用户输入一些属性时,我不想被覆盖。所以我想暂时排除这个属性被保存。那可能吗?我知道“JsonIgnore”的解决方案,但该属性将被永久忽略。

最佳答案

我认为更好的方法是反转这个问题。 与其尝试保存整个对象并忽略对特定属性的更改,不如设置您想要设置的属性?

相关文档如下:

https://ravendb.net/docs/article-page/4.2/csharp/client-api/operations/patching/single-document#change-values-of-two-fields

这就是你如何只设置两个属性,其余的保持原样:

session.Advanced.Patch<Employee, string>("employees/1", x => x.FirstName, "Robert");
session.Advanced.Patch<Employee, string>("employees/1", x => x.LastName, "Carter");

session.SaveChanges();

关于c# - 如何暂时排除属性(property)被保存到 RavenDb?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58594310/

相关文章:

c# - SQL Server 数据库不更新 C#

c# - foreach 循环确实循环,然后出现错误 过程或函数 spTestSp 指定了太多参数

c# - SQLDataReader 在使用 .Nest() 或 .Read() 时出现错误

enums - 在 RavenDB 中将枚举存储为整数

乌鸦DB : LoadAsync with Include returns null

c# - 从泛型方法问题调用重载方法

c# - 在 asp.net 中使用 dropzone.js

asp.net - SSL 不适用于 iPhone 上的 PassBook

c# - 如何使用嵌套中继器获取代码后面的页脚项值?

ravendb - RavenDB 中的 System.NotSupportedException : 'Optimistic concurrency for ' Taxes/353-A' is not supported when using a cluster transaction.'