感觉dotdotNetCMS添加新闻有几个不足
1、新闻编号与文件名可能不匹配
#region 得到当前新闻的上一条记录自动编号ID
int _IDStr = 0;
DataTable dts = rd.getTopNewsId(getDataLibStr);
if (dts != null && dts.Rows.Count > 0)
{
_IDStr = int.Parse(dts.Rows[0]["Id"].ToString());
dts.Clear(); dts.Dispose();
}
else
{
_IDStr = int.Parse(Foosun.Common.Rand.Number(8));
}
#endregion 结束
后面用 _IDStr +1的方法生成当前新闻文件名,如果是多人同时添加新闻,可能会存在不匹配的时候。但这个问题不是太大。
2、在新闻被添加到数据库前,要经过图片获取,新闻分页,静态生成等步骤,会比较慢,而且万一其中出现错误,导致整条新闻无法保存。我觉得应该先把新闻数据保存,然后再执行其他操作,最后update一遍相关字段。
3、类似第二条的问题,在某些较大型的网站,可能初期会有很多人同时更新内容,如果每添加一条都要马上经历图片获取,新闻分页,静态生成等步骤,效率会比较低,所以应该有类似发布管理的功能,批量执行新闻的后期操作。