,
一、啰嗦故事
接触SignalR已经很长一段时间了,不过也没用它写过什么像样的演示。今天就与大家分享一个比较简单演示,本文的重点在于如何使用SignalR。只是以一个实际的例子来说明一下。
引用>,
故事:故事是的起因是这样地,淘宝卖家是个很可怜的职业,四处寻亲,但是,往往都会因为买家初来炸道,或者出于恶意,或者本身已经养成了中差评习惯而给卖家以中差评。
本身中差评对淘宝店的影响其实也不算小,所以如果能帮卖家避免,最好可以避免。
那么如何避免呢?
首先,卖家是可以自行查看的,但是对于订单量多的卖家来说,是有些辛苦吧,最好可以有个功能。一但有那些给过不良评价的买家来下单时,就立刻提示出来,叮咚~向着这个目标踏进吧。
引用>这是我们的终极效果图,绿色的是马塞克,不要求无码图。
红色背景代表有过差评
×××背景代表,有过中评或是新号
提示的消息会在买家下单后自动出现在列表的头部(当然是自动的,不需要刷新,要不本节讲SignalR就没意义了是不)
嗯,下面我们来看看如何实现这个主动通知吧
二,走起服务器端
先建立一个ASP。NET MVC项目,这里默认是ASP。净MVC4剃刀引擎
我们先来建立一个模型,用于数据库存储也好,序列化后传递数据到界面也好,都离不开它。
(表())DbBuyer{(列()键)Id{得到;设置;}[列()]尼克{得到;设置;}[列()]<>以前BuyerUid{得到;设置;}[列()]RateCount{得到;设置;}[列()]<>以前SendMid{得到;设置;}[列()]SendBad{得到;设置;}[列()]<>以前HalfYearCount{得到;设置;}[列()]LastMonthCount{得到;设置;}[列()]DateTime AddTime{得到;设置;}}下面进入SignalR正题
引用一个NuGet的包:微软的ASP。净SignalR
然后我们就能看到引入了一些DLL和JS。
我们先建立一个中心,就叫BuyerHub,如果你没有模板……那就自己建个c类吧(此模板应该内置于2012.2版本中下载见www.visualstudio.com)
,
[HubName ()]<前> BuyerHub:中心/pre>{<>以前TakeCount=20;,<>以前ListGetNeastBuyerInfo () {(var db=实体()){var=db.DbBuyers列表。OrderByDescending (c=比;c.AddTime) (TakeCount) >之前,.OrderBy (c=祝辞c.Id) .ToList ();列表;}}}三、视图页面
下面我们建立一个页面指数(ASP。净MVC控制器我取名叫做AlertController, Razor视图)
使用SignalR实时显示淘宝买家信誉及中差评信息