6

我只是想获取 EPi 服务器网站的所有启用语言的列表(在管理模式下的“管理网站语言”面板中启用),最好还能够检索标志图标的路径,当然还有文化名称/ ID。

我正在使用 EPiServer 6 R2,所以如果代码适用于该版本,那就太好了。将我指向正确的方向也会很棒。

4

2 回答 2

13

你的意思是

ServiceLocator.Current.GetInstance<ILanguageBranchRepository>().ListEnabled();

但是,您实际上根本不应该使用 ServiceLocator,而是将 ILanguageBranchRepository 作为构造函数参数,该参数将由 StructureMap 自动解析。这为您的类提供了其依赖项的清晰列表,并使单元测试变得更加容易,因为您不必模拟 ServiceLocator。

于 2015-06-18T08:12:00.377 回答
8

在 EPiServer.DataAbstraction 中有 LanguageBranch.ListEnabled()。

看看这个文件,看看它是如何在管理员模式下绑定的:C:\Program Files (x86)\EPiServer\CMS\6.1.379.0\Application\UI\CMS\Admin\EditLanguageBranches.aspx

于 2013-10-15T13:14:48.690 回答