C# 缓存数据库结果以避免反射时超时

C# 缓存数据库结果以避免反射时超时,c#,entity-framework,datetime,caching,reflection,C#,Entity Framework,Datetime,Caching,Reflection,背景: 在我的应用程序(使用Entity Framework 6和.net 4.5)中,有几个表包含DateTime字段,我需要将所接收实体中的DateTimekind从unspecified转换为UTC(因为EF将DateTimekind具体化为unspecified)。为此,我创建了一个自定义属性,并使用反射将种类转换为UTC。这个想法是从这里改编的: 因为它发生在反射过程中,所以对返回的每一行都进行处理,这会稍微降低查询返回时间 问题:如何实现某种缓存机制以避免对每个检索到的行进行反射?因

背景: 在我的应用程序(使用Entity Framework 6和.net 4.5)中,有几个表包含
DateTime
字段,我需要将所接收实体中的
DateTimekind
unspecified
转换为
UTC
(因为EF将DateTimekind具体化为unspecified)。为此,我创建了一个自定义属性,并使用反射将种类转换为UTC。这个想法是从这里改编的:

因为它发生在反射过程中,所以对返回的每一行都进行处理,这会稍微降低查询返回时间


问题:如何实现某种缓存机制以避免对每个检索到的行进行反射?因此,检索到的实体将被缓存,转换将从unspecified应用到UTC,然后将结果提供给执行查询的位置。

此语句听起来矛盾
DateTime字段,如果您知道DateTime.kind定义为
DateTime
那么您如何陈述
unspecified
我是否遗漏了或不理解这里的内容。。?你能给出一个代码的例子吗?也许你的逻辑可能有缺陷initially@DJKRAZE实体框架将日期时间类型字段具体化为未指定的种类(),我希望它的种类为UTC。但这不是问题所在,因为我已经找到了解决办法。唯一的问题是-如何使用缓存来避免反射期间的额外执行时间。