对于专业的 C# 程序员来说,答案可能太容易了,但这对我来说有点棘手,因为我是 C# 和 ASP.NET MVC 的新手。
我刚刚了解了策略设计模式。我的程序需要能够上传图片。我将通过两种方式完成此操作,(1)能够上传到文件系统,以及(2)上传到数据库。为此,我将为这两种算法使用策略设计模式。
问题是我在一个单独的类库中实现策略,而不是解决方案中的 MVC 应用程序项目。
这段代码在控制器中运行良好,但在类库中不起作用。
这是在控制器中
[HttpPost]
public void UploadFile() {
string physicalPath = HttpContext.Server.MapPath("../") + "UploadImages" + "\\";
for (int i = 0; i < Request.Files.Count; i++) {
Request.Files[0].SaveAs(physicalPath + System.IO.Path.GetFileName(Request.Files[i].FileName));
}
}
这是在类库中。
public class UploadToFile : IUpload {
public void Upload() {
string physicalPath = HttpContext.Server.MapPath("../") + "UploadImages" + "\\";
for (int i = 0; i < Request.Files.Count; i++) {
Request.Files[0].SaveAs(physicalPath + System.IO.Path.GetFileName(Request.Files[i].FileName));
}
}
}
可能是类库无法访问HttpContext
and Request
?
using System.Web.Mvc;
并using System.Web;
正确引用。
我知道答案应该很简单,我在谷歌搜索 30 分钟时找不到这个主题的良好升级。
谢谢。