在N2CMS中,如何在下拉列表中为选项添加空格

时间:2012-11-20 17:36:49

标签: enums n2cms

N2CMS使用标准.net枚举来定义可编辑下拉列表的选项。

我的下拉选项需要包含空格,但当然你不能在枚举项名称中有空格。

我曾希望可以使用某种属性来定义选项的文本。但我看不到任何似乎在做任何事情的事情。

1 个答案:

答案 0 :(得分:1)

我设法最终解决了这个问题(通过阅读N2来源)。您使用全局资源文件。

特别是,EditableEnumAttribute中的代码会为枚举中的每个项目调用HttpContext.GetGlobalResourceObject(通过调用Utility.GetGlobalResourceString)。

因此,要在其中包含带空格(和其他特殊字符)的枚举名称,请添加与枚举名称匹配的全局资源文件,并为每个需要特殊字符的枚举项添加条目。

您需要做的第一件事是将App_GlobalResources文件夹添加到项目的顶层。这是至关重要的,就好像您使用VS.NET在别处创建资源文件一样,它们不会被创建为全局资源文件。

接下来在App_GlobalResources中创建一个与枚举名称匹配的资源文件。它只需匹配枚举的短名称,而不是完整的名称空间前缀名称。

现在在资源文件中为每个枚举项创建一个条目,其中Name列中的枚举项名称和Value列中包含特殊字符的名称。您不需要为每个枚举项添加一个条目,只为具有特殊字符的条目添加条目(尽管将它们全部添加可能是有意义的。)