int result = (int)cmdAdd.Parameters["@RETURN_VALUE"].Value;
SearchUtility.AddSearchKeys(conPortal, sectionID, result,
question, introduction);
conPortal.Close();
return result;
}
请注意AddFaq方法内部还调用了SearchUtility类的方法产生了有关内容的查询关键字,另外它还返回了新增对象的唯一标示符。这里CSK需要做的一个改进是在代码中增加 try catch finally来保证执行数据库连接的Close方法。虽然发生异常的可能性很小,但对于一个大容量的社区网站来说,你无法承受浪费浪费数据库连接可能带来的性能下降。
在FaqUtility中的另外两个方法是GetFaqs和GetFaqInfo。GetFaqs在SqlDataReader中循环读取记录并返回一个FaqInfo对象的ArrayList,而GetFaqInfo只返回由数据库中一条记录填充的FaqInfo对象。
public static ContentInfo GetFaqInfo(string username,
int contentPageID)
{FaqInfo faq = null;
SqlConnection conPortal = new SqlConnection(
CommunityGlobals.ConnectionString);
SqlCommand cmdGet = new SqlCommand(
"Community_FaqsGetFaq", conPortal);
cmdG<< 上一页 [11] [12] [13] [14] [15] [16] [17] [18] [19] [20] ... 下一页 >>