需求:某一个详细页面需要实现用户 12小时内阅读量+1,

实现思路;得到一个唯一码的机器码,不管是否用户登录了 都有这个码,然后存到缓存里面 最后判断时间+12小时  是否超过当前时间

   string cacheID="" //此处获取唯一机器码
//获取缓存
object ReadingCache = HttpRuntime.Cache["name"]; // name 自己定义 if (ReadingCache== null)
{//如果当前缓存为空
//创建缓存
System.Web.Caching.Cache objCache = HttpRuntime.Cache;
          // 实例化 list<A>
List<A> list = new List<A>();
          //实例化 A类 该类有两个字段 ID,CreateTime //唯一码 创建时间
A CustomerModel = new A();
CustomerModel.ID = CustomerGuid;
CustomerModel.CreateTime = DateTime.Now;
          //添加到LIST 集合中
list.Add(CustomerModel);
//添加缓存
objCache.Insert("LiveCustomerReading", list, null);
//阅读量+1 此处 获取数据库的 阅读量字段 并+1 更新
//查询数据库的阅读量 并+1更新
int count= 查数据阅读量
          bool isupdate=更新数据库阅读量方法(count) }
else
{//如果不为空
List<A> AAAA= new List<A>(); AAA= (List<A>)HttpRuntime.Cache["name"];
//得到当前用户的缓存
var isList= LiveCustomerReadingCacheList.FindAll(s => s.ID== CustomerGuid);
if ( isList.Count>)
{//查找到当前用户
DateTime customertime = DateTime.Now;
foreach (var item in isList)
{
customertime = item.CreateTime.AddHours();
}
            //判断当前时间 是否超过12小时
if (customertime < DateTime.Now)
{//如果超时 则更新时间,并阅读量+1
int count=查询数据库 +1
               boll isupdate= 更新到数据库方法(count) List<A> uptime = isList as List<A>;
A uptimes= uptime.Find(s => s.ID == CustomerGuid);
uotimes.CreateTime = DateTime.Now; //更新缓存时间
} }
else
{//如果没找到用户ID 则追加到缓存类
List<A> uptime = isList as List<A>;
Aaddcustome = new A();
addcustome.ID = CustomerGuid;
addcustome.CreateTime = DateTime.Now;
uptime.Add(addcustome);
int count=查询数据库阅读量 并 +1
bool isupdate=更新数据库阅读量方法(count) }

c# 根据唯一码,存缓存 实现12小时内 阅读量+1的更多相关文章

  1. 12小时包你学会基于ReactMix框架的ReactNativeApp开发(一)Hello World!

    ReactMixhttps://github.com/xueduany/react-mix自从昨天发布起来,得到了不少小伙伴的热捧,很高兴帮助大家解决了憋在心中很久的问题“如果我只会HTML,Css, ...

  2. Android设备唯一码的获取

    Android设备唯一码的获取 UTDID是集团无线设备统一ID方案,目的是给每一台设备一个ID,作为唯一标识.UTDID由客户端生成,并在设备中各个客户端之间共享.UTDID的生成中包含时间戳和随机 ...

  3. jQuery2.x源码解析(缓存篇)

    jQuery2.x源码解析(构建篇) jQuery2.x源码解析(设计篇) jQuery2.x源码解析(回调篇) jQuery2.x源码解析(缓存篇) 缓存是jQuery中的又一核心设计,jQuery ...

  4. 稳定获取Android设备唯一码(UUID)的解决方案

    最近做的一个项目中需要用到Android设备唯一码(UUID)来标识一台设备, Android中设备唯一码有很多,如:MAC地址.IMEI号(DeviceId).IMSI号.ANDROID_ID.序列 ...

  5. Guid.NewGuid().ToString()生成唯一码js

    Guid.NewGuid().ToString() 生成唯一码,用户生成随机id 生成唯一编码,版本控制对比等. //表示全局唯一标识符 (GUID). function Guid(g) { var ...

  6. MD5做为文件名。机器唯一码有电脑的CPU信息和MAC地址,这两个信息需要在linux或unix系统下才能获取吧。

    可以采用机器(电脑)唯一码 + 上传IP + 当前时间戳 + GUID ( + 随机数),然后MD5做为文件名.机器唯一码有电脑的CPU信息和MAC地址,这两个信息需要在linux或unix系统下才能 ...

  7. Python 根据id生成唯一码

    Python 根据id生成唯一码 最近业务中遇到需要分享某个文案,复制文案打开APP需要提取文案中包含的id,但又不想明文暴露id,所以需要对id进行加密,很想让前端来做,可惜多个前端协调起来不方便( ...

  8. android 设备唯一码的获取,Cpu号,Mac地址

    开发Android应用中,我们常常需要设备的唯一码来确定客户端. Android 中的几中方法,使用中常常不可靠 1. DEVICE_ID 假设我们确实需要用到真实设备的标识,可能就需要用到DEVIC ...

  9. Android获取手机唯一码

    大部分安卓手机都可以获取手机唯一码,但是有些手机的厂商却禁止了获取手机唯一码的权限,导致我们不能使用手机唯一码作为标识,但遇到一些必须要填的坑,我们也不能不填,所以使用以下方法来填坑,因此我们使用UU ...

随机推荐

  1. hdu 1207 四柱汉诺塔

    递推,汉诺塔I的变形. 这题真心没想到正确解法,越想越迷糊.这题看了别人题解过得,以后还是自己多想想,脚步太快并非好事. 贴上分析:   分析:设F[n]为所求的最小步数,显然,当n=1时,F[n]= ...

  2. A.Alyona and copybooks

    这题考查思维的全面性. 一开始我直接分类推公式,余数不同分类讨论. AC代码: #include<cstdio> #include<algorithm> using names ...

  3. R语言数据框中,用0替代NA缺失值

    1.用0替代数据框中的缺失值NA 生成数据框: > m <- matrix(sample(c(NA, :), , replace = TRUE), ) > d <- as.da ...

  4. Redis笔记4-持久化方案

    一:快照模式 默认redis是会以快照的形式将数据持久化到磁盘的(一个二进制文件,dump.rdb,这个文件名字可以指定),在配置文件中的格式是:save N M表示在N秒之内,redis至少发生M次 ...

  5. 搭建多系统yum服务器

    一.多系统服务器搭建 1.首先挂载光盘 2.安装vsftp 3.使用rpm -ql vsftpd查看vsftpd安装时都产生了哪些文件,找到以.server结尾的文件路径.此文件的文件名就是vsftp ...

  6. spring中自定义Event事件的使用和浅析

    在我目前接触的项目中,用到了许多spring相关的技术,框架层面的spring.spring mvc就不说了,细节上的功能也用了不少,如schedule定时任务.Filter过滤器. intercep ...

  7. Caused by: java.lang.NoClassDefFoundError: org/springframework/web/context/WebApplicationContext

    1.错误描述 严重: A child container failed during start java.util.concurrent.ExecutionException: org.apache ...

  8. com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: Unknown database 'smvch'

    1.错误描述 INFO:2015-05-01 14:20:44[main] - Initializing c3p0 pool... com.mchange.v2.c3p0.ComboPooledDat ...

  9. Flex中对表格中某列的值进行数字格式化

    1.问题背景 一般的,表格中展示的比率,对比率的处理是:保留两位小数,并向上保留 2.实现实例 <?xml version="1.0" encoding="utf- ...

  10. c语言 第二次实验报告

    一·实验题目,设计思路,实现方法 11-7 找鞍点 一个矩阵元素的"鞍点"是指该位置上的元素值在该行上最大.在该列上最小. 本题要求编写程序,求一个给定的n阶方阵的鞍点. 利用双重 ...