ASP.NET Core 2 - 不编译resx文件

问题描述 投票:0回答:2

使用以前的MVC / ASP.NET部署代码时,resx文件是非编译部署的,并且能够修改密钥,反映了值和更改。使用ASP.NET Core 2+,我注意到resx被编译成dll。

我用。编辑了.csproj

<PropertyGroup>
  <TargetFramework>netcoreapp2.1</TargetFramework>
  <MvcRazorCompileOnPublish>false</MvcRazorCompileOnPublish>
</PropertyGroup>

<ItemGroup>
  <Content Include="Resources\*" CopyToPublishDirectory="Always" />
</ItemGroup>

编辑完.csproj并重新部署后,资源文件夹和resx文件就在那里,但是当我在记事本中的服务器上编辑时,编辑没有反映出来。似乎仍然需要编译。

有什么方法可以在不编译的情况下更新resx文件?或者在asp.net核心2中有不同的方法吗?

asp.net-core asp.net-core-2.0 resx
2个回答
0
投票

在解决方案资源管理器中,选择要发布的项目

查看解决方案资源管理器底部的“属性”部分

  • 将构建操作更改为内容
  • 将复制到输出目录更改为始终复制

resx properties

您还可以查看https://docs.microsoft.com/en-us/aspnet/core/fundamentals/localization?view=aspnetcore-2.1


0
投票

我个人只为资源创建一个新的类库项目,然后我将其添加为主项目的引用。

这样我就可以编辑,编译和上传资源库项目,而无需构建和上传整个项目。

顺便说一句,资源.resx文件类型没有在类库项目新文件对话框中列出,但您可以创建一个文本文件并手动将其扩展名更改为.resx,它将正常工作。

© www.soinside.com 2019 - 2024. All rights reserved.