C# 如何从MVC控制器访问static System.IO.File类?
我尝试删除控制器中的文件:C# 如何从MVC控制器访问static System.IO.File类?,c#,asp.net-mvc,file,C#,Asp.net Mvc,File,我尝试删除控制器中的文件: [AcceptVerbs(HttpVerbs.Get)] public JsonResult EliminarDocFotoContrato(int? DocFotoID) { DocumentosFotosContrato docFoto = db.DocumentosFotosContrato.Find(DocFotoID); var nomeDocFoto = docFoto.CaminhoDocFoto; var dir = Server.MapPat
[AcceptVerbs(HttpVerbs.Get)]
public JsonResult EliminarDocFotoContrato(int? DocFotoID)
{
DocumentosFotosContrato docFoto = db.DocumentosFotosContrato.Find(DocFotoID);
var nomeDocFoto = docFoto.CaminhoDocFoto;
var dir = Server.MapPath("/uploads");
var path = Path.Combine(dir, nomeDocFoto);
var result = "Documento / Foto apagada.";
return Json(result, JsonRequestBehavior.AllowGet);
}
控制器:
[AcceptVerbs(HttpVerbs.Get)]
public JsonResult EliminarDocFotoContrato(int? DocFotoID)
{
DocumentosFotosContrato docFoto = db.DocumentosFotosContrato.Find(DocFotoID);
var nomeDocFoto = docFoto.CaminhoDocFoto;
var dir = Server.MapPath("/uploads");
var path = Path.Combine(dir, nomeDocFoto);
var result = "Documento / Foto apagada.";
return Json(result, JsonRequestBehavior.AllowGet);
}
var nameDocFoto具有文件名
var dir有一个目录
路径名为docfoto+dir(正确)
现在我需要删除文件的代码。我能帮忙吗?
我只是试着这样做:
File.Delete(path);
但是得到这个错误:
Error 2 'System.Web.Mvc.Controller.File(string, string, string)' is a 'method', which is not valid in the given context D:\VS2010\Projects\MvcTesteLayout\MvcTesteLayout\Controllers\_DadosComerciais\ContratoController.cs 1511 17 MvcTesteLayout
代替
File.Delete(path)
,在控制器的上下文中将使用控制器版本的方法;您需要使用与此完全相同的System.IO.File.Delete()
来访问系统输入/输出版本(您需要的版本)。如果在delete
之前未指定System.IO.File.
,即使文件顶部有System.IO
的using语句,它也将默认为控制器版本。使用System.IO.File.delete()
,如File()
是控制器
的一种方法,im使用使用System.IO
@CesarMiguel,并且仍然有来自控制器的File()
方法。谢谢@CodeCaster,它可以工作