直接在类中使用 Server.MapPath 会出现错误,这是由于类中不能直接使用 System.Web.UI.Page 的非静态函数造成的。解决方法有两种:

方法一、为类增加继承

class CFoo : System.Web.UI.Page

方法二、利用上下文直接使用

System.Web.HttpContext.Current.Server.MapPath

在使用方法一时请注意:C#中,派生类只能从一个类中继承

方法二中,System.Web.HttpContext.Current 中 System.Web 是名称空间,HttpContext.Current 是类,HttpContext 封装有关个别 HTTP 请求的所有 HTTP 特定的信息,Current 表示当前 HTTP 请求。

如果我们引入名称空间 System.Web 了,则可以省略为 HttpContext.Current.Server.MapPath。

其实这里并不是只限于 Server.MapPath,还可以这样使用 Server 类的其它属性与方法,比如:Server.HtmlEncode(注意大小写)。

ASP.NET - 在类中如何使用 Server.MapPath的更多相关文章

  1. 【转】类中如何引用server.MapPath()

    转至:http://blog.csdn.net/tangjianft/article/details/5357151 今天在写一个上传图片方法时遇到了两个问题:1.public string getI ...

  2. asp.net中Server.MapPath的使用

    http://www.studyofnet.com/news/184.html   本文导读:Server.MapPath()的全名是System.Web.HttpContext.Current.Se ...

  3. .NET CORE 2.0之 依赖注入在类中获取IHostingEnvironment,HttpContext

    在.NET CORE 中,依赖注入非常常见, 在原先的 HttpContext中常用的server.Mappath已经么有了如下: HttpContext.Current.Server.MapPath ...

  4. Server.MapPath和Request.PhysicalApplicationPath的异同

    很多人对它们都不陌生,在众多的WEB程序中,使用Server.MapPath和Request.PhysicalApplicationPath来操作目录/文件的几率参半,我曾经也经常混用,然而时间久了. ...

  5. 在自己写的C#类中调用 ASP.NET的Request,server 等对象

    加命名空间(可能需要在项目中先加引用,再在类中如下引用) using System.Web.SessionState; HttpContext.Current.Session["TotalP ...

  6. ASP.NET中Request.ApplicationPath、Request.FilePath、Request.Path、.Request.MapPath、Server.MapPath(转载)

    1.Request.ApplicationPath->当前应用的目录   Jsp中, ApplicationPath指的是当前的application(应用程序)的目录,ASP.NET中也是这个 ...

  7. asp.net 类库中获取session c#类中获取session

    asp.net  类库中获取session c#类中获取session 1. 先引入命名空间 using System.Web; using System.Web.SessionState; 在使用H ...

  8. 【转载】ASP.NET中Server.MapPath方法获取网站根目录总结

    在ASP.NET网站应用程序中,可以通过Server.MapPath方法来获取跟服务器有关的目录信息,如获取网站的根目录.获取当前代码文件所在的目录路径.获取当前代码所在路径的上级路径等.Server ...

  9. C# / .NET 在类中使用Server.MapPath

    直接在类中使用 Server.MapPath 会出现错误,这是由于类中不能直接使用 System.Web.UI.Page 的非静态函数造成的.解决方法有两种: 方法一.使类继承System.Web.U ...

随机推荐

  1. BZOJ 1552: [Cerc2007]robotic sort( splay )

    kpm大神说可以用块状链表写...但是我不会...写了个splay.... 先离散化 , 然后splay结点加个min维护最小值 , 就可以了... ( ps BZOJ 3506 题意一样 , 双倍经 ...

  2. Android访问网络(可以正常使用)

    以下是MainActiviy.java,有必要的注释,里面用到了handler,以及线程,workThread如何更新mainThread才能够更新的内容. package com.wyl.httpt ...

  3. Webgrid参数格式

    显示图片 grid.Column(null,"图片",format:p=>Html.Raw(string.Format("<img src='{0}'/> ...

  4. 最新的QT git代码到code.qt.io/cgit,还有planet.qt.io有许多博客

    http://code.qt.io/cgit/ http://planet.qt.io/

  5. c++ - Create empty json array with jsoncpp - Stack Overflow

    python中multiprocessing.pool函数介绍_正在拉磨_新浪博客     multiprocessing.pool c++ - Create empty json array wit ...

  6. Java 找出四位数的全部吸血鬼数字 基础代码实例

    /**  * 找出四位数的全部吸血鬼数字  * 吸血鬼数字是指位数为偶数的数字,能够由一对数字相乘而得到,而这对数字各包括乘积的一半位数的数字,当中从最初的数字中选取的数字能够随意排序.  * 以两个 ...

  7. 为什么我的outlook只能收信不能发信,发送测试电子邮件消息: 无法发送此邮件。请在帐户属性中验证电子邮件

    链接地址:http://zhidao.baidu.com/link?url=aVIFo2aNLuHIZGZuEUataHkZp4XApHqyvbEK8ACHPhi3jwhGhM0GBAtm72AnsP ...

  8. BZOJ 2795: [Poi2012]A Horrible Poem( hash )

    ...字符串hash. 假如长度x是一个循环节, 那么对于任意n(x | n)也是一个循环节. 设当前询问区间[l, r]长度为len = ∏piai, 最终答案ans = ∏piai' ,我们只需枚 ...

  9. HDOJ 4007 Dave【最大覆盖集】

    Dave Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65768/65768 K (Java/Others)Total Submis ...

  10. mysql启动的四种方式

    mysql的四种启动方式: .mysqld 启动mysql服务器:./mysqld --defaults-file=/etc/my.cnf --user=root 客户端连接: mysql --def ...