代码阅读总结之ASP.NET StartKit TimeTracker(应用程序路径之处理笔记)

在开发中我们为了整个程序目录结构清晰化,望望会建立许多不同的文件目录.

例如结构如下:

|root
|pic
|web
|usercontrol

在web目录中,我们怎么取到pic目录中的图片路径呢?

方法1:

让我们先看看ASP.NET StartKit TimeTracker的解决方案:

ASP.NET StartKit TimeTracker的类Global中定义了一个公有方法:

public static string GetApplicationPath(HttpRequest request) 
    {
      string path = string.Empty;
      try 
      {
        if(request.ApplicationPath != "/")
          path = request.ApplicationPath;
      }
      catch (Exception e)
      {
        throw e;
      }
      return path;
    }

在需要的地方进行调用,例如:

<a href='<%= Global.GetApplicationPath(Request) %>/<%# ((ASPNET.StarterKit.TimeTracker.BusinessLogicLayer.TabItem)
Container.DataItem).Path %>'>
   <%# ((ASPNET.StarterKit.TimeTracker.BusinessLogicLayer.TabItem) Container.DataItem).Name %>
</a>

我对此方法进行了修改:

我先定义一个页面基类.

public class PageBase :System.Web.UI.Page

让系统中的其他aspx页面继承PageBase.

以上是小编为您精心准备的的内容,在的博客、问答、公众号、人物、课程等栏目也有的相关内容,欢迎继续使用右上角搜索按钮进行搜索目录
, string
, 方法
, request
路径
,以便于您获取更多的相关知识。

时间: 2024-11-17 23:52:41

代码阅读总结之ASP.NET StartKit TimeTracker(应用程序路径之处理笔记)的相关文章

代码阅读总结之ASP.NET StartKit TimeTracker

自定义集合类排序(Sort())方法随笔 ASP.NET StartKit TimeTracker中定义了很多自定义集合类 例如: UsersCollection TimeEntriesCollection 等等 他们都是ArrayList类的子类 例如: TimeEntriesCollection存放自定义类TimeEntry 这些自定义集合类都实现了排序方法Sort 先看我写的一段代码: using System; using System.Collections; namespace Ar

代码阅读总结之ASP.NET StartKit TimeTracker(角色权限之捉虫笔记)

在ASP.NET StartKit TimeTracker中由于程序设计上的小失误,我们可以利用这个BUG来达到越权访问aspx页面的能力. 我们都知道该系统定义了三种角色,分别为 Administrator(管理员) Project Manager(项目管理者) Consultant(顾问) 只有Administrator角色的用户才可以访问管理信息页面(ProjectList.aspx) 现在我来描述一下错误现象: 现在我有一个管理员的帐户ai_ai@126.com. 我们先用这个帐户登陆,

代码阅读总结之ASP.NET StartKit TimeTracker(数据绑定之困惑笔记)

以前在项目中数据绑定一直用<%# %> 今天在ASP.NET StartKit TimeTracker的AdminTabs.ascx中有一段代码: <a href='<%= Global.GetApplicationPath(Request) %>/<%# ((ASPNET.StarterKit.TimeTracker.BusinessLogicLayer.TabItem) Container.DataItem).Path %>'> <%# ((ASP

代码阅读总结之ASP.NET StartKit TimeTracker(QueryString之改进笔记)

在ASP.NET StartKit TimeTracker中使用了大量QueryString 例如: http://localhost/TTWebCSVS_cn/ProjectList.aspx?index=2 现在让我们在IE地址里面敲入下面的地址,会出现什么情况? http://localhost/TTWebCSVS_cn/ProjectList.aspx?index=a2 或者 http://localhost/TTWebCSVS_cn/ProjectList.aspx?index= 很明

代码阅读总结之ASP.NET StartKit Commerce

ASP.NET StartKit Commerce简单,容易理解. 我认为是初次学习.NET代码的首选,不怕各位笑话,我曾经完整阅读该项目代码3次. 那么,通过阅读我们能学习到什么知识呢?请看我下面的总结: 1.多层结构的实现 依我见是2层结构:PL层和BLL层(没有明显的DAL层,DAL和BLL共同组成BLL层).但是我们可以学习到Db过程的调用方法. 2.Web服务的简单使用 3.Web用户控件的使用 4.数据绑定的相关知识 让我们先看该项目中的一段代码: <asp:HyperLink cs

代码阅读总结之Fitch and Mather 7.0

asp.net发生异常或错误时错误提示页面的处理方法 当asp.net发生异常或错误时,我们是怎么样处理错误提示页面? 我总结了下面几种方式: i:利用方法Response.Redirect() 看下面2段代码: 1. 在页面admin.aspx中发生异常时 try { //程序逻辑 } catch(OverflowException) { //在选中的上下文中所进行的算术运算.类型转换或转换操作导致溢出时引发的异常 //例如:小于int的MinValue或大于int的MaxValue,异常,转

Kryo简介及代码阅读笔记

更新:2012-08-01 版本 2.16长时间运行可能会导致OOM,版本2.18有bug,不能正确序列化map和collection. 真是悲剧,所用的每一个版本都有bug.不过从代码来看,作者有时的确比较随便..测试用例也少..(比起msgpack少多了) ======================================== Kryo官方网站:https://code.google.com/p/kryo/ 优点:     速度快!见https://github.com/eisha

FFMpeg框架代码阅读

FFMpeg框架代码阅读 内容摘要:FFmpeg是一个集录制.转换.音/视频编码解码功能为一体的完整的开源解决方案.FFmpeg的开发是基于Linux操作系统,但是可以在大多数操作系统中编译和使用.FFmpeg支持MPEG. DivX.MPEG4.AC3.DV.FLV等40多种编码,AVI.MPEG.OGG.Matroska.ASF等90多种解码. TCPMP, VLC, MPlayer等开源播放器都用到了FFmpeg. FFmpeg主目录下主要有libavcodec.libavformat和l

摘自《代码阅读方法与实践》

第一章:导论要养成一个习惯,经常花时间阅读别人编写的高品质代码.要有选择地阅读代码,同时,还要有自己的目标.您是想学习新的模式.编码风格.还是满足某些需求的方法?要注意并重视代码中特殊的非功能性需求,这些需求也许会导致特定的实现风格.在现有的代码上工作时,请与作者或维护人员进行必须的协调,以避免重复劳动或因此而产生厌恶情绪.请将从开放源码软件中得到的益处看作是一项贷款,尽可能地寻找各种方式来回报开放源码社团.多数情况下,如果您想要了解"别人会如何完成这个功能呢?",除了阅读代码以外,没