using System; using System.Collections.Generic; using System.Data; using System.Linq; using System.Text; using System.Web; using System.Web.Services; using HomeService.DBHelper; using HomeService.Models; using HomeService.Utility; using Microsoft.Practices.EnterpriseLibrary.Data; namespace HomeService { /// /// NavigationService 的摘要说明 /// [WebService(Namespace = "http://tempuri.org/")] [WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)] [System.ComponentModel.ToolboxItem(false)] // 若要允许使用 ASP.NET AJAX 从脚本中调用此 Web 服务,请取消对下行的注释。 // [System.Web.Script.Services.ScriptService] public class NavigationService : System.Web.Services.WebService { [WebMethod] public static void StoreMemcached() { string gid = ""; string name = ""; string description = ""; string url = ""; DataTable modInquire = GetModuleName(); for (int iCount = 0; iCount < modInquire.Rows.Count; iCount++) { gid = modInquire.Rows[iCount]["GID"].ToString(); name = modInquire.Rows[iCount]["NAME"].ToString(); description = modInquire.Rows[iCount]["DESCRIPTION"].ToString(); url = modInquire.Rows[iCount]["MODULEURL"].ToString(); if (!CacheHelper.IsExists("/" + url)) { CacheHelper.Set("/" + url, gid + "|" + name + "|" + description, DateTime.Now.AddHours(1)); } else { CacheHelper.Replace("/" + url, gid + "|" + name + "|" + description, DateTime.Now.AddHours(1)); } } } [WebMethod] public static string DeliveryMemcached(string url) { string _delivery = ""; string _de = CacheHelper.Get(url) as string; if (_de != null) { _delivery = _de; } else { StoreMemcached(); _delivery = CacheHelper.Get(url) as string; } return _delivery; } private static DataTable GetModuleName() { StringBuilder sql = new StringBuilder(); DataTable dt = new DataTable(); sql.AppendLine("select * from sys_module "); dt = SqlHelper.ExecuteSql(sql.ToString()); return dt; } } }