asp.net-web-api – 如何告诉RavenDB忽略属性而不是WebAPI?
发布时间:2020-12-16 04:38:31 所属栏目:asp.Net 来源:网络整理
导读:我有一个我不想存储在RavenDB中的属性.如果我添加JsonIgnore属性,RavenDB会忽略不计,但WebApi也是如此.我仍然希望WebApi将数据序列化到Web客户端. 我如何告诉RavenDB忽略一个属性但仍然有WebApi序列化它? 解决方法 在RavenDB 2.0中 using Raven.Imports.New
我有一个我不想存储在RavenDB中的属性.如果我添加JsonIgnore属性,RavenDB会忽略不计,但WebApi也是如此.我仍然希望WebApi将数据序列化到Web客户端.
我如何告诉RavenDB忽略一个属性但仍然有WebApi序列化它? 解决方法
在RavenDB 2.0中
using Raven.Imports.Newtonsoft.Json public class Foo { [JsonIgnore] public string Bar { get; set; } } 因为它使用的是raven的json.net内部化副本–WebApi不会获取该属性. 在RavenDB 1.0或2.0中 您可以使用自定义json合约解析程序直接自定义对象的json序列化. public class CustomContractResolver : DefaultRavenContractResolver { public CustomContractResolver(bool shareCache) : base(shareCache) { } protected override List<MemberInfo> GetSerializableMembers(Type objectType) { var members = base.GetSerializableMembers(objectType); if (objectType == typeof(Foo)) members.RemoveAll(x => x.Name == "Baz"); return members; } } 在初始化时将其连接到文档存储: documentStore.Conventions.JsonContractResolver = new CustomContractResolver(true); documentStore.Initialize(); 因为它没有连接到任何其他地方,它只会影响RavenDB.根据您的需要定制它. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- asp.net-mvc – 权限设计
- ASP.NET中TextBox使用Ajax控件显示日期不全的问题解决方法
- asp.net – 了解runat服务器属性
- asp.net – FederatedAuthentication.WSFederationAuthenti
- 在没有母版页控件的情况下在asp.net中打印页面
- asp.net – 返回新的RedirectResult()vs返回Redirect()
- asp.net – 如何在VB.net中处理SqlDataReader null值
- 使用ASP.NET将用户订阅到MailChimp
- asp.net-mvc – 在.NET MVC 3中使用REST Web服务
- asp.net-mvc – Asp.net Mvc:创建一个简单的cms
推荐文章
站长推荐
- 如何在asp.net和C#中实现登录会话
- IIS 7中的应用程序池不显示.NET Framework 3.5
- asp.net – 如何使用Forms身份验证将用户重定向到
- asp.net-core – 如何在ASP.NET Core中实现angul
- asp.net-mvc – IDisposable ASP.net MVC控制器
- 是否可以首先为ASP.Net或ASP.Net MVC站点创建HTM
- asp.net-mvc – 加载测试SignalR集线器应用程序的
- ASP.NET:这个HttpModule有什么作用? System.Se
- asp.net-mvc – 记录死亡的所有黄色屏幕,即使它是
- asp.net-mvc – 如何在asp.net C#中从http重定向
热点阅读