ASP.net 基于Ajax 站内短信即时查询的思路
站内短信收发方面没有什么可说的,关键是在用Ajax做即时查询的时候碰到了些问题,昨晚终于解决了!同时测试通过!
在数据库设计上面,基本上要设计三个表,
1.短信发送
2.短信收取
3.状态表
整个数据设计的查询是基于LINQ~!
1.短信实时读取更新:
表述层上面,发送的方面基本没有难点~!收取方面要做到客户点击后就代表读取过短信,必须要在短信收取表上加载字段“是否读取”值,为bool,默认为0。如果客户点击邮件时转到邮件读取页面,同时做更新字段“是否读取”为1,标记为已读取就可以了~!
2.短信即时提醒:
短信即时提醒用到了Ajax技术的Timer控件,如果想在整个网站都做到能即时提醒更新,在MasterPage.master页面放入一个
UpdatePanel控件,里面放入Timer控件就可以了,然后设计Timer控件时间在后台做数据库轮回查询~!同时进入MasterPage.master.cs进行代码编写:
主要分三个步骤:
1.首先查询出短信收取里面的字段“是否读取”值为0的Count。
2.查询出短信状态表里面的状态的值
3.对比查询出的两个值,如果1值>2值。更新状态表的状态值,同时弹出对话框,提醒用户查收短信~!
附:
protected void Timer1_Tick(object sender, EventArgs e)
{
UpdateLabel();
dxsqDataContext dxdc = new dxsqDataContext();
var jieguo = from info in dxdc.dxs
where info.收信人 == Convert.ToString(Session["userName"]) && info.标记 == 0
group info by info.标记 into g
select new
{
未读总 = g.Count()
};
foreach (var item in jieguo)
{
dxzLa.Text = Convert.ToString(item.未读总);
}
dxstateDataContext dxst = new dxstateDataContext();
var jieguo1 = from inf in dxst.dxzt
where inf.userName == Convert.ToString(Session["userName"])
select new
{
状态总 = inf.state
};
foreach (var item1 in jieguo1)
{
ztzLa.Text = Convert.ToString(item1.状态总);
}
int dxzint = Convert.ToInt32(dxzLa.Text);
int ztzint = Convert.ToInt32(ztzLa.Text);
if (dxzint > ztzint)
{
dxstateDataContext dxzt = new dxstateDataContext();
var jieguo2 = dxzt.dxzt.Single(L => L.userName == Convert.ToString(Session["userName"]));
jieguo2.state = ztzint;
dxst.SubmitChanges();
ScriptManager.RegisterClientScriptBlock(UpdatePanel1, this.GetType(), "", "var msg = new PopBubble('短消息提示:','您有" + dxzint + "封未读消息',''); msg.show();", true);
}
}
private void UpdateLabel()
{
timela.Text = System.DateTime.Now.ToString();
}
转载于:https://www.cnblogs.com/SimonBai/archive/2010/08/01/1789745.html
ASP.net 基于Ajax 站内短信即时查询的思路相关推荐
- 通告功能、公告、消息(站内短信)、通告 (建表思路与功用)
1 业务描述 首先我们来认识一下通告,消息,提醒这三者的区别和联系. 1.1 通告Bulletin: 平台发,用户收.分为实时通告和非实时通告.通告有优先级:紧急,高,普通. 平台向单个用户发,平台向 ...
- 公告信息mysql_通告(公告),消息(站内短信),提醒的数据库设计
1 业务描述 首先我们来认识一下通告,消息,提醒这三者的区别和联系. 1.1 通告Bulletin: 平台发,用户收.分为实时通告和非实时通告.通告有优先级:紧急,高,普通. 平台向单个用户发,平台向 ...
- 通告(公告),消息(站内短信),提醒的设计:通告
1 业务描述 首先我们来认识一下通告,消息,提醒这三者的区别和联系. 1.1 通告Bulletin: 平台发,用户收.分为实时通告和非实时通告.通告有优先级:紧急,高,普通. 平台向单个用户发,平台向 ...
- 通告(公告),消息(站内短信),提醒的设计
1 业务描述 首先我们来认识一下通告,消息,提醒这三者的区别和联系. 1.1 通告Bulletin: 平台发,用户收.分为实时通告和非实时通告.通告有优先级:紧急,高,普通. 平台向单个用户发,平台向 ...
- 用.net编写站内短信群发软件
用.net编写站内短信群发软件,主要有几个问题 分析http通信协议.摸透登录.发消息的通信细节 实现登录并保持登录状态 发送消息 看代码: using System; using System.Co ...
- 最喜欢的博客书签和站内短信系统
DataLifeEngine允许每个注册用户添加其喜爱的新闻到他们的书签.不要混淆书签在选项卡式的浏览器(这不是浏览器特性,它是数据通信换码功能).登录后,每个访问者可以添加到收藏夹"这一项 ...
- Flask - 基于阿里云的短信发送
目录 一.前期准备 二.官方 SDK_demo 的学习使用 2-1 sms_send 2-2 sms_query 指定手机号的短信发送的 三.基于SDK发送短信 + Celery 实现异步任务 一.前 ...
- ajax 提交 .net ispostback不执行,ASP.NET基于Ajax的Enter键提交问题分析
本文实例讲述了ASP.NET基于Ajax的Enter键提交.分享给大家供大家参考,具体如下: 近日遇到一个Enter键的问题,总结下: 1. 首先复习下html form对Enter的响应,不同的浏览 ...
- 基于AT指令开发短信程序
基于AT指令开发短信程序 本人的专职工作是做手机底层软件中SMS和CBS的功能模块软件,对SMS的PDU格式可以说是比较了解,在网上查找了一下感觉目前国内公开的软件大多功能比较单一.主要特点如下: 1 ...
最新文章
- 腾讯!阿里!大二男生斩获4家头部科技公司实习offer!完整经验总结!
- iOS架构-分离静态库.a文件并导出.m伪代码文件(11)
- python web为什么不火-pythonweb为什么不火-问答-阿里云开发者社区-阿里云
- [专栏目录]-ARM学习笔记目录
- GRUNT----JSHINT
- Pull or Push?监控系统如何选型
- [图]美专家称人类可能永远无法飞出太阳系
- php封装图片上传,PHP文件上传封装
- php获取当前页面select的值,关于JS获取select的值
- BeanFactory not initialized or already closed - call 'refresh' before access
- 生物信息学的现状与展望
- Camera和Image sensor技术基础笔记(2) -- Sensor的快门:全局快门(global shutter)和卷帘快门(rolling shutter)
- IPv4掩码与掩码位数的转换
- python3贴吧_python3模拟百度登录并实现百度贴吧签到示例分享(百度贴吧自动签到)...
- 复合型网络拓扑结构图_网络拓扑结构图知识
- 转:一位10年Java工作经验的架构师聊Java和工作经验
- html标题(heading)
- java 临时文件_Java临时文件
- 小公司如何做项目管理流程
- The Servers project is closed(Tomcate )