NetCMS修改之二:单击新闻附件,直接打开文件「建议收藏」

NetCMS修改之二:单击新闻附件,直接打开文件「建议收藏」   NetCMS系统的新闻附件,是通过down.aspx页面实现下载附件的。这样做的好处可能是可以隐藏附件的真实地址,但给用户使用会带来一个小麻烦:无法使用右键单击来实现将下载的文件另存为。   经检查,此功能是在NetCMS.Publish命名空间的LabelMass类中定义的getNewsFiles实现的,文件位于NetCMS.Publish/Label/NewsParameter.

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE稳定放心使用

    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复制到服务器的发行目录下,就可以了。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/187681.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • Matlab中sqrt函数的用法「建议收藏」

    Matlab中sqrt函数的用法「建议收藏」目录语法说明示例向量元素的平方根输入参数详细信息IEEE合规性提示sqrt求解平方根语法B=sqrt(X)说明B=sqrt(X)返回数组X的每个元素的平方根。对于X的负元素或复数元素,sqrt(X)生成复数结果。sqrt函数的域包含负数和复数,如果使用不当,可能会导致意外结果。对于负的复数z=u+i*w,复数方根sqrt(z)返回sqrt(r)*(cos(phi/2)+1i*sin(phi/2))…

    2022年5月1日
    113
  • 行为树

    行为树行为树常被用来实现游戏中的AI。每次执行AI,都会从根节点遍历整个树,父节点执行子节点,子节点执行完后将结果返回父节点。下面是基本的四个节点:1*顺序节点(Sequence):属于组合节点,顺序执行

    2022年8月1日
    8
  • 2021年PyCharm激活码破解方法

    2021年PyCharm激活码破解方法,https://javaforall.net/100143.html。详细ieda激活码不妨到全栈程序员必看教程网一起来了解一下吧!

    2022年3月15日
    46
  • PAT备考经验&相关信息[通俗易懂]

    在9月8号下午的PAT考试中,我幸运的拿到了满分,用时1小时45分钟,排名第五,算是成功迈出了转专业的第一步。按照惯例应该嘚瑟一波,然而身边并没有人考这个,转念一想,不如把考试日志和备考经验教训记录下来,以期看见此文的后来者能少走一些弯路,更加高效的刷题学习(虽然可能并没有人能看到 _(:△」∠)_)。当然,在科班大佬面前我只是个尚未入门的弱鸡,因此这篇经验主要针对有意转行/业余爱好编程/基…

    2022年4月7日
    108
  • Spring中bean的注入方式

    Spring中bean的注入方式

    2021年4月9日
    122
  • mybatisplus的mapper使用(华为畅享8plus)

    IService 注释 BaseMapper 注释 进一步封装:采用get查询单行,remove删除,list查询集合,page分页 DDML booleansave(Tentity); 选择字段,策略插入 intinsert(Tentity); 插入一条记录 booleansaveBatch(CollectionentityList); 批量插入 …

    2022年4月10日
    74

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号