C# 在特定时间段后检查新数据

C# 在特定时间段后检查新数据,c#,javascript,asp.net,sql,web-services,C#,Javascript,Asp.net,Sql,Web Services,现在我正在使用第三方提供商获取一些数据。每次我打电话给该服务,我都需要为数据支付少量费用。我想知道sql或c#中是否有一种方法可以将数据存储在个人数据库中,然后(在指定的时间段后)检查我的第三方提供商是否有新数据 例如,与每次加载页面时“调用服务”/“查找数据”不同,我希望每周左右查找新数据,并将数据存储在个人数据库中以供下周使用。这有助于我降低成本,并加快我的系统 我在这里不寻找任何代码,只是寻找一种执行/解决问题的简单方法。我的工具是VS、c#、SQL、asp.net/html。您可以在SQ

现在我正在使用第三方提供商获取一些数据。每次我打电话给该服务,我都需要为数据支付少量费用。我想知道sql或c#中是否有一种方法可以将数据存储在个人数据库中,然后(在指定的时间段后)检查我的第三方提供商是否有新数据

例如,与每次加载页面时“调用服务”/“查找数据”不同,我希望每周左右查找新数据,并将数据存储在个人数据库中以供下周使用。这有助于我降低成本,并加快我的系统


我在这里不寻找任何代码,只是寻找一种执行/解决问题的简单方法。我的工具是VS、c#、SQL、asp.net/html。

您可以在SQL中创建一个简单的表,其中存储用于调用数据提供程序的键、上次返回的数据以及上次从数据提供程序检索数据时的时间戳。如果它们的键不在表中,请调用数据提供程序,并在表中插入一行,其中包含结果和新的时间戳。如果时间戳比您希望的要旧(可能在web.config中配置该时间量),则检索数据并使用新数据和新时间戳更新表中的该行


通过存储数据,确保您没有违反数据提供商的服务条款。我为数据提供商工作,我们的合同允许最多24小时存储大多数数据。

您可以用SQL创建一个简单的表,在其中存储用于调用数据提供商的键、上次返回的数据以及上次从数据提供商检索数据时的时间戳。如果它们的键不在表中,请调用数据提供程序,并在表中插入一行,其中包含结果和新的时间戳。如果时间戳比您希望的要旧(可能在web.config中配置该时间量),则检索数据并使用新数据和新时间戳更新表中的该行


通过存储数据,确保您没有违反数据提供商的服务条款。我为一家数据提供商工作,我们的合同允许存储大多数数据最多24小时。

我建议您使用sql依赖关系。当数据发生更改时,它将通知您的应用程序:当然,如果他们允许的话。您还可以使用任意数量的缓存应用程序:AppFabric、memcached、SharedCache、ASP.NET缓存

我建议您使用sql依赖关系。当数据发生更改时,它将通知您的应用程序:当然,如果他们允许的话。您还可以使用任意数量的缓存应用程序:AppFabric、memcached、SharedCache、ASP.NET缓存

这取决于您使用的服务;他们的API可能不支持这一点,这取决于您使用的服务;他们的API可能不支持这一点。谢谢Eric,有没有办法在.net framework中创建和存储时间戳?在使用sql server或c之前,我从未这样做过。您可以设置触发器等,但最简单的方法是从应用程序调用服务,获取数据,并将其保存到指定DateTime.Now(或UtcNow)作为时间戳的数据库中。您喜欢的任何ORM都将帮助您持久化数据并将其取回。@cfarm54:是的,从.NET framework用SQL存储数据很容易。那里有很多教程。下面是谷歌的最重要的结果:重新发明轮子不是一个好的做法。使用经验证的解决方案比使用自己的解决方案要好得多。@sub13有什么我可以直接使用的解决方案吗?谢谢Eric,有没有办法在.net framework中创建和存储时间戳?在使用sql server或c之前,我从未这样做过。您可以设置触发器等,但最简单的方法是从应用程序调用服务,获取数据,并将其保存到指定DateTime.Now(或UtcNow)作为时间戳的数据库中。您喜欢的任何ORM都将帮助您持久化数据并将其取回。@cfarm54:是的,从.NET framework用SQL存储数据很容易。那里有很多教程。下面是谷歌的最重要的结果:重新发明轮子不是一个好的做法。使用一个经过验证的解决方案要比使用自己的解决方案好得多。@sub13有什么我可以直接使用的吗?谢谢。您有任何缓存的具体细节/示例吗?请参阅:使用asp.net缓存对象,您可以设置项目过期的时间限制,也可以选择使用前面提到的sqlcachedependency。谢谢。您是否有任何特定的缓存详细信息/示例?请参阅:使用asp.net缓存对象,您可以设置项目过期的时间限制,也可以选择使用前面提到的sqlcachedependency。