温馨提示:代码在线浏览功能只能做为源码浏览参考,如果想更进一步了解该代码请下载:风讯dotNETCMSv1.0免安装版源码
当前文件:
FooSunCMS/Foosun.CMS/SearchEngine.cs[14K,2009-6-12 11:42:42],打开代码结构图
FooSunCMS/Foosun.CMS/SearchEngine.cs[14K,2009-6-12 11:42:42],打开代码结构图1using System; 2
using System.IO; 3
using System.Data; 4
using System.Configuration; 5
using System.Web; 6
using System.Web.Security; 7
using System.Web.UI; 8
using System.Web.UI.WebControls; 9
using System.Web.UI.WebControls.WebParts; 10
using System.Web.UI.HtmlControls; 11
using Foosun.CMS; 12
using Foosun.CMS.Common; 13
using System.Xml; 14
15
namespace Foosun.CMS 16
{ 17
public class SearchEngine 18
{ 19
/// <summary> 20
/// 得到虚拟目录 21
/// </summary> 22
private static string _dirdumm = Foosun.Config.UIConfig.dirDumm; 23
24
/// <summary> 25
/// 是否生成百度搜索协议xml文件 26
/// </summary> 27
/// <returns>返回1或者0</returns> 28
public static string IsBaidu() 29
{ 30
string str = "0"; 31
if (_dirdumm.Trim() != "") { _dirdumm = "/" + _dirdumm; } 32
try 33
{ 34
35
if (!File.Exists(HttpContext.Current.Server.MapPath(_dirdumm + "/xml/sys/baiduSearch.xml"))) 36
{ 37
throw new Exception("找不到配置文件(" + _dirdumm + "/xml/sys/baiduSearch.xml" + ").<li>可能是虚拟目录配置出错.请修改web.config</li>"); 38
} 39
string xmlPath = HttpContext.Current.Server.MapPath(_dirdumm + "/xml/sys/baiduSearch.xml"); 40
FileInfo finfo = new FileInfo(xmlPath); 41
System.Xml.XmlDocument xdoc = new XmlDocument(); 42
xdoc.Load(xmlPath); 43
XmlElement root = xdoc.DocumentElement; 44
XmlNodeList isbaidu1 = root.GetElementsByTagName("isbaidu"); 45
str = isbaidu1[0].InnerXml; 46
} 47
catch 48
{ 49
throw new Exception("配置文件出错:" + _dirdumm + "/xml/sys/baiduSearch.xml" + ""); 50
} 51
return str; 52
} 53
54
///// <summary> 55
///// 获得最大临时表数 56
///// </summary> 57
///// <returns></returns> 58
//public static int basenumber() 59
//{ 60
// int intflg = 1000; 61
// if (_dirdumm.Trim() != "") { _dirdumm = "/" + _dirdumm; } 62
// try 63
// { 64
// if (!File.Exists(HttpContext.Current.Server.MapPath(_dirdumm + "/xml/sys/base.xml"))) {throw new Exception("找不到配置文件(" + _dirdumm + "/xml/sys/base.xml" + ").<li>可能是虚拟目录配置出错.请修改web.config</li>"); } 65
// string xmlPath = HttpContext.Current.Server.MapPath(_dirdumm + "/xml/sys/base.xml"); 66
// FileInfo finfo = new FileInfo(xmlPath); 67
// System.Xml.XmlDocument xdoc = new XmlDocument(); 68
// xdoc.Load(xmlPath); 69
// XmlElement root = xdoc.DocumentElement; 70
// XmlNodeList number1 = root.GetElementsByTagName("number"); 71
// intflg = int.Parse(number1[0].InnerXml); 72
// } 73
// catch { throw new Exception("配置文件出错:" + _dirdumm + "/xml/sys/base.xml" + ""); } 74
// return intflg; 75
//} 76
77
///// <summary> 78
///// 获取删除新闻的日期数 79
///// </summary> 80
///// <returns></returns> 81
//public static int datenumber() 82
//{ 83
// int intflg = 100; 84
// if (_dirdumm.Trim() != "") { _dirdumm = "/" + _dirdumm; } 85
// try 86
// { 87
// if (!File.Exists(HttpContext.Current.Server.MapPath(_dirdumm + "/xml/sys/base.xml"))) { throw new Exception("找不到配置文件(" + _dirdumm + "/xml/sys/base.xml" + ").<li>可能是虚拟目录配置出错.请修改web.config</li>"); } 88
// string xmlPath = HttpContext.Current.Server.MapPath(_dirdumm + "/xml/sys/base.xml"); 89
// FileInfo finfo = new FileInfo(xmlPath); 90
// System.Xml.XmlDocument xdoc = new XmlDocument(); 91
// xdoc.Load(xmlPath); 92
// XmlElement root = xdoc.DocumentElement; 93
// XmlNodeList datenumber1 = root.GetElementsByTagName("datenumber"); 94
// intflg = int.Parse(datenumber1[0].InnerXml); 95
// } 96
// catch { throw new Exception("配置文件出错:" + _dirdumm + "/xml/sys/base.xml" + ""); } 97
// return intflg; 98
//} 99
100
///// <summary> 101
///// 获取删除新闻的日期数 102
///// </summary> 103
///// <returns></returns> 104
//public static int conditionnumbers() 105
//{ 106
// int intflg = 100; 107
// if (_dirdumm.Trim() != "") { _dirdumm = "/" + _dirdumm; } 108
// try 109
// { 110
// if (!File.Exists(HttpContext.Current.Server.MapPath(_dirdumm + "/xml/sys/base.xml"))) { throw new Exception("找不到配置文件(" + _dirdumm + "/xml/sys/base.xml" + ").<li>可能是虚拟目录配置出错.请修改web.config</li>"); } 111
// string xmlPath = HttpContext.Current.Server.MapPath(_dirdumm + "/xml/sys/base.xml"); 112
// FileInfo finfo = new FileInfo(xmlPath); 113
// System.Xml.XmlDocument xdoc = new XmlDocument(); 114
// xdoc.Load(xmlPath); 115
// XmlElement root = xdoc.DocumentElement; 116
// XmlNodeList conditionnumber1 = root.GetElementsByTagName("conditionnumber"); 117
// intflg = int.Parse(conditionnumber1[0].InnerXml); 118
// } 119
// catch { throw new Exception("配置文件出错:" + _dirdumm + "/xml/sys/base.xml" + ""); } 120
// return intflg; 121
//} 122
123
/// <summary> 124
/// 生成百度搜索新闻协议xml文件 125
/// </summary> 126
public static void RefreshBaidu() 127
{ 128
ContentManage rd = new ContentManage(); 129
rootPublic pd = new rootPublic(); 130
int getnumber = 50; 131
int getType = 0; 132
string updatePeri = "60"; 133
string website = "www.foosun.net"; 134
string webmaster = "service@foosun.cn"; 135
StreamWriter sw = null; 136
if (_dirdumm.Trim() != "") { _dirdumm = "/" + _dirdumm; } 137
try 138
{ 139
if (!File.Exists(HttpContext.Current.Server.MapPath(_dirdumm + "/xml/sys/baiduSearch.xml"))) 140
{ 141
throw new Exception("找不到配置文件(" + _dirdumm + "/xml/sys/baiduSearch.xml" + ").<li>可能是虚拟目录配置出错.请修改web.config</li>"); 142
} 143
string xmlPath = HttpContext.Current.Server.MapPath(_dirdumm + "/xml/sys/baiduSearch.xml"); 144
FileInfo finfo = new FileInfo(xmlPath); 145
System.Xml.XmlDocument xdoc = new XmlDocument(); 146
xdoc.Load(xmlPath); 147
XmlElement root = xdoc.DocumentElement; 148
XmlNodeList number1 = root.GetElementsByTagName("number"); 149
XmlNodeList searchtype1 = root.GetElementsByTagName("searchtype"); 150
XmlNodeList updatePeri1 = root.GetElementsByTagName("updatePeri"); 151
XmlNodeList website1 = root.GetElementsByTagName("website"); 152
XmlNodeList webmaster1 = root.GetElementsByTagName("webmaster"); 153
getnumber = int.Parse(number1[0].InnerXml); 154
getType = int.Parse(searchtype1[0].InnerXml); 155
updatePeri = updatePeri1[0].InnerXml; 156
website = website1[0].InnerXml; 157
webmaster = webmaster1[0].InnerXml; 158
} 159
catch 160
{ 161
throw new Exception("配置文件出错:" + _dirdumm + "/xml/sys/baiduSearch.xml"); 162
} 163
string FileName = HttpContext.Current.Server.MapPath("~/baidu.xml"); 164
sw = File.CreateText(FileName); 165
sw.WriteLine("<?xml version=\"1.0\" encoding=\"utf-8\"?>\r"); 166
sw.WriteLine("<document>\r"); 167
sw.WriteLine(" <webMaster>" + webmaster + "</webMaster>\r"); 168
sw.WriteLine(" <webSite>http://" + website + "</webSite>\r"); 169
sw.WriteLine(" <updatePeri>" + updatePeri + "</updatePeri>\r"); 170
string urls = ""; 171
DataTable dt = rd.getLastFormTB(); 172
if (dt != null && dt.Rows.Count > 0) 173
{ 174
for (int i = 0; i < getnumber; i++) 175
{ 176
if (dt.Rows.Count > i) 177
{ 178
try 179
{ 180
IDataReader drs = rd.getNewsID(dt.Rows[i]["NewsID"].ToString()); 181
if (drs.Read()) 182
{ 183
sw.WriteLine(" <item>\r"); 184
sw.WriteLine(" <title></title>\r"); 185
if (drs["NewsType"].ToString() == "2") 186
{ 187
urls = drs["URLaddress"].ToString(); 188
} 189
else 190
{ 191
DataTable dt1 = rd.getClassParam(drs["ClassID"].ToString()); 192
if (dt != null && dt.Rows.Count > 0) 193
{ 194
if (Foosun.Common.Public.readparamConfig("ReviewType") == "1") 195
{ 196
urls = "/content-" + drs["NewsID"].ToString() + ".aspx"; 197
} 198
else 199
{ 200
if (drs["isDelPoint"].ToString() != "0") 201
{ 202
urls = "/content-" + drs["NewsID"].ToString() + ".aspx"; 203
} 204
else 205
{ 206
urls = "/" + dt1.Rows[0]["SavePath"].ToString() + "/" + dt1.Rows[0]["SaveClassframe"].ToString() + "/" + drs["SavePath"].ToString() + "/" + drs["FileName"].ToString() + drs["FileEXName"].ToString(); 207
} 208
} 209
urls = Foosun.Publish.CommonData.SiteDomain + urls.Replace("//", "/"); 210
dt1.Clear(); dt1.Dispose(); 211
} 212
} 213
sw.WriteLine(" <link>" + urls + "</link>\r"); 214
sw.WriteLine(" <description>" + Foosun.Common.Input.LostHTML(drs["naviContent"].ToString()) + "</description>\r"); 215
sw.WriteLine(" <text>" + Foosun.Common.Input.LostHTML(drs["Content"].ToString()) + "</text>\r"); 216
if (drs["PicURL"].ToString().Trim() != "" && drs["PicURL"].ToString().Trim() != null) { sw.WriteLine(" <image>http://" + website + _dirdumm + (drs["PicURL"].ToString()).Replace("{@dirfile}", Foosun.Config.UIConfig.dirFile) + "</image>\r"); } 217
else { sw.WriteLine(" <image></image>\r"); } 218
sw.WriteLine(" <keywords>" + drs["Metakeywords"].ToString().Replace(",", " ") + "</keywords>\r"); 219
sw.WriteLine(" <author>" + drs["Author"] + "</author>\r"); 220
sw.WriteLine(" <source>" + drs["Souce"] + "</source>\r"); 221
sw.WriteLine(" <pubDate>" + drs["CreatTime"] + "</pubDate>\r"); 222
sw.WriteLine(" </item>\r"); 223
} 224
drs.Close(); 225
} 226
catch 227
{ 228
continue; 229
} 230
} 231
else 232
{ 233
break; 234
} 235
} 236
dt.Clear(); dt.Dispose(); 237
} 238
sw.WriteLine("</document>\r"); 239
sw.Flush(); 240
sw.Close(); sw.Dispose(); 241
} 242
243
///// <summary> 244
///// 插入临时表 245
///// </summary> 246
///// <param name="Prot">传入的条件</param> 247
///// <param name="NewsID">新闻编号</param> 248
///// <param name="DataTable">新闻所属的表</param> 249
//public static void insertTemplTable(string Prot, string NewsID, string DataTable) 250
//{ 251
// int getnumber = 1000; 252
// int getcondition = 100; 253
// int getdatenumber = 90; 254
// StreamWriter sw = null; 255
// if (_dirdumm.Trim() != "") { _dirdumm = "/" + _dirdumm; } 256
// try 257
// { 258
// if (!File.Exists(HttpContext.Current.Server.MapPath(_dirdumm + "/xml/sys/base.xml"))) { throw new Exception("找不到配置文件(" + _dirdumm + "/xml/sys/base.xml" + ").<li>可能是虚拟目录配置出错.请修改web.config</li>", ""); } 259
// string xmlPath = HttpContext.Current.Server.MapPath(_dirdumm + "/xml/sys/base.xml"); 260
// FileInfo finfo = new FileInfo(xmlPath); 261
// System.Xml.XmlDocument xdoc = new XmlDocument(); 262
// xdoc.Load(xmlPath); 263
// XmlElement root = xdoc.DocumentElement; 264
// XmlNodeList number1 = root.GetElementsByTagName("number"); 265
// XmlNodeList conditionnumber1 = root.GetElementsByTagName("conditionnumber"); 266
// XmlNodeList datenumber1 = root.GetElementsByTagName("datenumber"); 267
// getnumber = int.Parse(number1[0].InnerXml); 268
// getcondition = int.Parse(conditionnumber1[0].InnerXml); 269
// getdatenumber = int.Parse(datenumber1[0].InnerXml); 270
// } 271
// catch { throw new Exception("配置文件出错:" + _dirdumm + "/xml/sys/baiduSearch.xml" + ""); } 272
// string[] getProt = Prot.Split(','); 273
// //推荐,滚动,热点,幻灯,头条,公告,WAP,精彩 格式如:0,1,1,0,1,0,0,1 274
// try 275
// { 276
// int isRec = int.Parse(getProt[0]); 277
// int isMarquee = int.Parse(getProt[1]); 278
// int isHOT = int.Parse(getProt[2]); 279
// int isFilt = int.Parse(getProt[3]); 280
// int isTT = int.Parse(getProt[4]); 281
// int isAnnouce = int.Parse(getProt[5]); 282
// int isWap = int.Parse(getProt[6]); 283
// int isJC = int.Parse(getProt[7]); 284
// } 285
// catch { throw new Exception("传入的参数有问题"); } 286
// //清除过期的数据 287
// ContentManage rd = new ContentManage(); 288
// rd.delTBDateNumber(getdatenumber); 289
// //rd.delTBTypeNumber(Prot, getcondition); 290
//} 291
} 292
}






}