我在MVC4解决方案中创建了几个App_LocalResource文件夹以及很多resx文件。但是,当Web部署到Azure时,它们不会在更改集中重新定义/找到/列出。没有文件夹被推送到Azure。我无法将它们添加到解决方案中,因为它们已经存在?我通过VS创建了文件夹,所以我认为它们包含在创建解决方案中。
我该怎么办?
答案 0 :(得分:1)
您需要将每个.resx文件的“复制到输出目录”属性设置为“如果更新则复制”或“始终复制”。如果您没有为App_LocalResources文件夹中的任何.resx文件更改此属性,则整个文件夹将不会显示在生成的云服务包中,并且不会显示在Project / csx / Debug / roles中在本地调试时,/ rolename / approot / bin文件夹。在不更改每个.resx文件的“复制到输出目录”属性的情况下部署程序包时,如果通过Web部署上载它们,它们将不会包含在您的服务包中。
另外,从可维护性的角度来看,我建议使用Azure Tables而不是.resx文件。它们在部署环境中更灵活,因为如果需要,可以在运行时更改Table实体,而无需重新部署。
答案 1 :(得分:0)
我将resx文件的Build Action
更改为Content
而不是Embeded Resource
。 Embeded Resource
将资源限制在您无法访问常规方式的dll中。