未加载T4创建的本地化资源文件

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

在我的(Web)项目中,我创建了2个常规资源文件:

strings.resx带有一些字符串值(此文件也具有strings.designer.cs)

strings.en-US.resx带有一些翻译后的字符串值(设置为不生成代码)

当我在向美国提出要求期间更改区域性时,将使用本地化的资源文件,并且所有字符串均以英语显示(如果可用)。

我现在添加了2个T4模板文件来自动生成资源文件(现在,在测试时,一些硬编码的值,稍后将从DB加载值:]

strings2.tt将创建一个strings2.resx文件,而VS自动创建一个strings2.designer.cs文件。

strings2.en-US.tt将创建strings2.en-US.resx文件(也不会生成代码)。

所有输出文件看起来都一样,所有文件都已成功构建,并且T4文件已转换而没有任何问题。但是,当我在更改区域性之后尝试从T4生成的资源文件中检索本地化的字符串时,它将不会返回英语变体。

我看不到任何导致此问题的原因,将所有资源文件移动到单独的项目并不能解决问题。

我会丢失某些东西还是仅仅是因为文件是自动生成的?

c# asp.net localization t4
1个回答
0
投票

右键单击tt模板,选择“属性”选项。然后找到“构建操作”属性,然后选择“内容”。然后重新构建tt模板。对我来说这是有用的。

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