1.需在共享目录的服务器上加入一个有权限(所有权限,包括读、写、删除等权限)的账号名
2.MVC站点webconfig文件中,<system.web>节点中加入配置节点,
    <identity impersonate="true" userName="域\账号" password="口令"/>
3.在保存时,则可以直接进行保存

//----------------------------------------------------------------------------------------------------------------------------------------------------------------------

/// <summary>
/// 保存文件,将上传的文件写入至共享目录内
/// </summary>
/// <param name="file"></param>
/// <param name="saveAsFullName"></param>
/// <returns></returns>
protected PageActionReturn SaveUploadFile(HttpPostedFile file, string saveAsFullName)
{
    PageActionReturn ret = new PageActionReturn();
    try
    {
            if (string.IsNullOrEmpty(file.FileName))
            {
 
                ret.IsOK = false;
                ret.Message = "无指定文件";
            }
            else
            {
                System.IO.FileInfo fileInfo = new System.IO.FileInfo(saveAsFullName);
                System.IO.DirectoryInfo folder = fileInfo.Directory;
                CreatePath(folder);
                
                file.SaveAs(saveAsFullName);
 
                ret.IsOK = true;
                ret.ReturnData = saveAsFullName;
 
            }
        
    }
    catch (Exception ex)
    {
        ret.IsOK = false;
        ret.Message = ex.Message;
        ret.StackTrace = ex.StackTrace;
    }
 
    return ret;
 
}      
/// <summary>
/// 建立目录
/// 如目录不存在,则一直创建,前提是拥有根目录权限
/// </summary>
/// <param name="folder"></param>
private void CreatePath(System.IO.DirectoryInfo folder)
{            
    if (!folder.Exists)
    {
        if (!folder.Parent.Exists)
        {CreatePath(folder.Parent);}
        
        folder.Create();                 
    }           
}

MVC上传文件目录至共享目录的更多相关文章

  1. IIS ASP.NET MVC 上传文件到NAS目录

    项目要求,网站用户上传的文件,存储到服务器挂接的NAS磁盘里,死活也写不进去,一直提示 System.IO.IOException: 指定的服务器无法运行请求的操作 阿里的客服也问过了, 一群只知道发 ...

  2. ASP.NET MVC上传文件----uploadify的使用

    课程设计需要实现上传文件模块,本来ASP.NET是有内置的控件,但是ASP.NET MVC没有,所以就有两种方法:自定义和采用第三方插件.由于时间的关系,故采用第三方插件:uploadify. upl ...

  3. ASP.NET Core MVC上传、导入、导出知多少

    前言 本君已成夜猫子,本节我们来讲讲ASP.NET Core MVC中的上传,这两天才研究批量导入功能,本节顺便简单搞搞导入.导出,等博主弄妥当了再来和大家一并分享. .NET Core MVC上传 ...

  4. Spring框架学习(8)spring mvc上传下载

    内容源自:spring mvc上传下载 如下示例: 页面: web.xml: <?xml version="1.0" encoding="UTF-8"?& ...

  5. egg.js 通过 form 和 ajax 两种方式上传文件并自定义目录和文件名

    egg.js 通过 form 和 ajax 两种方式上传文件并自定义目录和文件名 评论:10 · 阅读:8437· 喜欢:0 一.需求 二.CSRF 校验 三.通过 form 表单上传文件 四.通过 ...

  6. Spring MVC上传文件

    Spring MVC上传文件 1.Web.xml中加入 <servlet> <servlet-name>springmvc</servlet-name> <s ...

  7. MVC上传文件

    ASP.NET MVC上传文件是必段撑握的知识.加强训练才是.以前Insus.NET曾使用第三方MyAjaxForm.js :http://www.cnblogs.com/insus/p/378548 ...

  8. Spring MVC 上传文件

    Spring MVC上传文件需要如下步骤: 1.前台页面,form属性 method设置为post,enctype="multipart/form-data"  input的typ ...

  9. MVC:上传文件

    今天写了一个使用MVC上传的DEMO,很简单不超过10行代码.代码如下(关注重点,所以尽量精简掉其他代码): 项目结构

随机推荐

  1. 控件如何在IDE中响应MouseDown事件

    自己做了一个pagecontrol控件,点击page页可以切换,运行时没有问题,但在设计时控件放到窗体后好像不响应mouse事件,导致设计期不能切换page页,有知道的朋友还请不吝赐教,谢谢. CM_ ...

  2. POJ1159——Palindrome(最长公共子序列+滚动数组)

    Palindrome DescriptionA palindrome is a symmetrical string, that is, a string read identically from ...

  3. P134、面试题22:栈的压入、弹出序列

    题目:输入两个整数序列,第一个序列表示栈的压入顺序,请判断第二个序列是否为该栈的弹出顺序.假设压入栈的所有数字均不相等.例如序列1.2.3.4.5是某栈的压栈序列,序列4,5,3,2,1是该压栈序列对 ...

  4. Yii CActiveForm

    http://blog.sina.com.cn/s/blog_685213e70101mo4i.html 文档: http://www.yiiframework.com/doc/api/1.1/CAc ...

  5. linux应用程序问题

    ---- 1 ----

  6. Java面试题-多线程

    1. java中有几种方法可以实现一个线程? 多线程有两种实现方法,分别是继承Thread类与实现Runnable接口. 这两种方法的区别是,如果你的类已经继承了其它的类,那么你只能选择实现Runna ...

  7. hdu4638Group

    http://acm.hdu.edu.cn/showproblem.php?pid=4638 求某一区间所包含的连续的段 对于乱序的数 到了i这个数所包含的段数 首先把这个数看作单独的段 再看一下前面 ...

  8. SSMS错误代码大全

    0 操作成功完成. 1 功能错误. 2 系统找不到指定的文件. 3 系统找不到指定的路径. 4 系统无法打开文件. 5 拒绝访问. 6 句柄无效. 7 存储控制块被损坏. 8 存储空间不足,无法处理此 ...

  9. CodeForces Round #287 Div.2

    A. Amr and Music (贪心) 水题,没能秒切,略尴尬. #include <cstdio> #include <algorithm> using namespac ...

  10. BZOJ3280: 小R的烦恼

    题解: 随便建一下图费用流就可以过吧... 代码: #include<cstdio> #include<cstdlib> #include<cmath> #incl ...