在文件上传器Post Action中,Controller属性为null

时间:2012-10-06 13:58:47

标签: asp.net-mvc upload controller asp.net-mvc-4

我使用一个控制器上传文件(UploadImageController,行动AddFiles返回部分视图)

在视图中的其他控制器中用作: @{ Html.RenderAction(MVC.Admin.UploadImage.AddFiles(new MyImageService())); }

其中MyImageService是类,其中包含有关上传路径,图像sazes和其他(MyImageService : IImageService

的信息 UploadImageController中的

我添加了属性IImageService _imageService { get; set; }AddFiles行动:

public virtual PartialViewResult AddFiles(IImageService service)
{
    _imageService = service;
    return PartialView();
}

当我尝试上传文件时

[HttpPost]
public virtual ActionResult UploadFiles()
{...}

我的财产_imageService == null,为什么以及如何更改它?

1 个答案:

答案 0 :(得分:0)

建议初始化Controller的字段in the Constructor(即在Action调用之前):

private IImageService _imageService;
public UploadImageController(IImageService service) {
    _imageService = service;
}