NetCMS修改之二:单击新闻附件,直接打开文件
2009-04-08 14:37
375 查看
NetCMS系统的新闻附件,是通过down.aspx页面实现下载附件的。这样做的好处可能是可以隐藏附件的真实地址,但给用户使用会带来一个小麻烦:无法使用右键单击来实现将下载的文件另存为。
经检查,此功能是在NetCMS.Publish命名空间的LabelMass类中定义的getNewsFiles实现的,文件位于NetCMS.Publish/Label/NewsParameter.cs。原来是这样定义的:
/// <summary>
/// 取得附件地址
/// </summary>
/// <param name="NewsID">新闻编号</param>
/// <returns>返回附件地址</returns>
protected string getNewsFiles(string NewsID, int NewsTF)
{
string str = "";
IDataReader rd = CommonData.DalPublish.GetNewsFiles(NewsID);
while (rd.Read())
{
str += "<div><a href=/"" + CommonData.SiteDomain + "/down-" + rd["id"].ToString() + ".aspx/">" + rd["URLName"].ToString() + "</a></div>";
}
rd.Close();
return str;
}
很明显可以看出,生成的html页面的链接是down.aspx页面。现将其改为如下:
/// <summary>
/// 取得附件地址
/// </summary>
/// <param name="NewsID">新闻编号</param>
/// <returns>返回附件地址</returns>
protected string getNewsFiles(string NewsID, int NewsTF)
{
string str = "";
IDataReader rd = CommonData.DalPublish.GetNewsFiles(NewsID);
while (rd.Read())
{
string DownAdress = rd["FileUrl"].ToString().ToLower();
DownAdress = DownAdress.Replace("{@dirfile}", NetCMS.Config.UIConfig.dirFile);
DownAdress = DownAdress.Replace("{@dirtemplet}", NetCMS.Config.UIConfig.dirTemplet);
string dimm = NetCMS.Config.UIConfig.dirDumm;
if (dimm.Trim() != string.Empty)
{
dimm = "/" + dimm;
}
DownAdress = dimm + DownAdress;
str += "<div><a href=/"" + CommonData.SiteDomain + "/" + DownAdress + "/">" + rd["URLName"].ToString() + "</a></div>";
}
rd.Close();
return str;
}
编译之后,将NetCMS.Web/Bin文件夹生成的NetCMS.Publish.dll复制到服务器的发行目录下,就可以了。
经检查,此功能是在NetCMS.Publish命名空间的LabelMass类中定义的getNewsFiles实现的,文件位于NetCMS.Publish/Label/NewsParameter.cs。原来是这样定义的:
/// <summary>
/// 取得附件地址
/// </summary>
/// <param name="NewsID">新闻编号</param>
/// <returns>返回附件地址</returns>
protected string getNewsFiles(string NewsID, int NewsTF)
{
string str = "";
IDataReader rd = CommonData.DalPublish.GetNewsFiles(NewsID);
while (rd.Read())
{
str += "<div><a href=/"" + CommonData.SiteDomain + "/down-" + rd["id"].ToString() + ".aspx/">" + rd["URLName"].ToString() + "</a></div>";
}
rd.Close();
return str;
}
很明显可以看出,生成的html页面的链接是down.aspx页面。现将其改为如下:
/// <summary>
/// 取得附件地址
/// </summary>
/// <param name="NewsID">新闻编号</param>
/// <returns>返回附件地址</returns>
protected string getNewsFiles(string NewsID, int NewsTF)
{
string str = "";
IDataReader rd = CommonData.DalPublish.GetNewsFiles(NewsID);
while (rd.Read())
{
string DownAdress = rd["FileUrl"].ToString().ToLower();
DownAdress = DownAdress.Replace("{@dirfile}", NetCMS.Config.UIConfig.dirFile);
DownAdress = DownAdress.Replace("{@dirtemplet}", NetCMS.Config.UIConfig.dirTemplet);
string dimm = NetCMS.Config.UIConfig.dirDumm;
if (dimm.Trim() != string.Empty)
{
dimm = "/" + dimm;
}
DownAdress = dimm + DownAdress;
str += "<div><a href=/"" + CommonData.SiteDomain + "/" + DownAdress + "/">" + rd["URLName"].ToString() + "</a></div>";
}
rd.Close();
return str;
}
编译之后,将NetCMS.Web/Bin文件夹生成的NetCMS.Publish.dll复制到服务器的发行目录下,就可以了。
相关文章推荐
- 【其他】Activity中通过 ctrl+鼠标单击 直接链接到对应的xml布局文件,而不是打开R文件。
- 一个修改注册表,使浏览器默认不直接打开已知后缀的下载文件,而是下载后确认,且单独打开的vbscript脚本
- VS2013 取消 直接单击文件 然后直接打开
- 教你找回直接打开outlook附件文件编辑后保存但未另存为的附件文件?
- Outlook不能打开附件(提示:无法创建文件xx,请右键单击要在其中创建文件的文件夹..)
- win7系统怎么样修改文件后缀的默认打开方式实现双击直接打开
- 如何重新找到在Windows Live Mail 中直接打开修改保存并且不小心关闭的文件
- 让网页附件为Word或Excel的文件,下载时直接弹出下载对话框,而不打开它
- outlook打开附件提示:无法创建文件, 请右键单击要在其中创建文件的文件夹
- 直接打开最近修改过的文件
- OutLook的临时文件存放位置/打开邮件附件修改并保存附件没有更改
- 直接修改别人jar包里面的class文件 工具:jclasslib
- 让IE浏览器打开JSON文件直接显示
- 新装win7系统C盘内文件修改不能直接保存
- 安卓开发调用第三方应用(如WPS)打开文档(比如Word),如何设置文件只读,不能被修改?
- Linux下文件操作,打开一个文件并修改文件后5个字符为abcde
- MFC单文档打开文件默认后缀名修改
- C# 单击按钮打开文件对话框
- 修改linux打开文件数
- MyEclipse修改默认打开文件方式