我一直在玩多语言网站的MVC和本地化。碰巧我也有本地化下载(不同语言的说明)。我想:资源也可以包含文件,为什么不把它们放在那里?容易说和完成,但我现在的问题是:如何从资源文件中提取文件,以便用户可以打开或保存它们?
我是否使用ResourceManager.GetObject("filename in resource", what type will it be?)
或ResourceManager.GetStream("filename in resource", what type will it be?)
,如何将其作为文件返回?
我一直在看this帖子,但我不确定这是否是我需要的?
答案 0 :(得分:0)
我做到了。根本不需要ResourceManager
。
在我的控制器中:
public FileResult Download(string filename)
{
byte[] fileBytes = null;
switch (filename)
{
case "Flyer Instructie.pdf":
fileBytes = Resources.Resources.Flyer_Instructie;
break;
case "Flyer Front.pdf":
fileBytes = Resources.Resources.Flyer_Front;
break;
case "Flyer Back.pdf":
fileBytes = Resources.Resources.Flyer_Back;
break;
}
return File(fileBytes, MediaTypeNames.Application.Octet, filename);
}
在我的观点中:
<%: Html.ActionLink(Resources.DownloadsInstructionText, "Download", "Home", new { filename = Resources.DownloadsInstructionLink }, null) %>