首页上一页 1 下一页尾页 4 条记录 1/1页
搜索引擎模块咨询
发表在ASP.NET图书答疑
2013-02-17
是否精华
是
否
版块置顶:
是
否
您好,我买了你们编的《ASP.NET开发典型模块大全》一书,当我阅读第16章搜索引擎模块的时候,用2005版的程序我调试了很久无法运行,问题出在装载字库部分,经过断点跟踪发现红色字体部分装载字库为null,这样导致后边红色部分初始化长度时出错,不知是怎么回事(解决方案中的data文件夹中也有dict.dct文件),麻烦帮忙解决一下,谢谢,程序代码出现在so.aspx.cs文件中的
private void fc(string keyWord) //自定义分词方法
{
if (m_SimpleDictSeg == null)
{
try
{
m_SimpleDictSeg = new CSimpleDictSeg();
m_SimpleDictSeg.DictPath = Server.MapPath("Data/"); //指定分词词库位置
m_SimpleDictSeg.LoadDict(); //装载字库到内存
}
catch (Exception e1)
{
m_SimpleDictSeg = null;
Response.Write(String.Format("Load Dict Fail! ErrMsg:{0}", e1.Message));
return;
}
}
private DataTable FindResult(string keyWord)
{
//调用自定义方法,初始化数据源对象
this.setTable(); //创建查询结果存储表
this.fc(keyWord); //关键字分词
DateTime dt = DateTime.Now; //开始记时
IndexSearcher search = new IndexSearcher(Server.MapPath("Index")); //把刚才建立的索引取出来
string[] sField = new string[strKey.Length]; //初始化长度
sField.SetValue("resTitle", 0);
for (int s = 1; s < strKey.Length; s++)
{
sField.SetValue("resTitle", s); //创建将要查询resTitle字段
}
敬请尽早帮忙解决回复,谢谢。
private void fc(string keyWord) //自定义分词方法
{
if (m_SimpleDictSeg == null)
{
try
{
m_SimpleDictSeg = new CSimpleDictSeg();
m_SimpleDictSeg.DictPath = Server.MapPath("Data/"); //指定分词词库位置
m_SimpleDictSeg.LoadDict(); //装载字库到内存
}
catch (Exception e1)
{
m_SimpleDictSeg = null;
Response.Write(String.Format("Load Dict Fail! ErrMsg:{0}", e1.Message));
return;
}
}
private DataTable FindResult(string keyWord)
{
//调用自定义方法,初始化数据源对象
this.setTable(); //创建查询结果存储表
this.fc(keyWord); //关键字分词
DateTime dt = DateTime.Now; //开始记时
IndexSearcher search = new IndexSearcher(Server.MapPath("Index")); //把刚才建立的索引取出来
string[] sField = new string[strKey.Length]; //初始化长度
sField.SetValue("resTitle", 0);
for (int s = 1; s < strKey.Length; s++)
{
sField.SetValue("resTitle", s); //创建将要查询resTitle字段
}
敬请尽早帮忙解决回复,谢谢。