How to retrieve a list of all enabled languages for the EPi Server website programmatically?

StackOverflow https://stackoverflow.com/questions/19375707

문제

I simply want to get a list of all enabled languages for the EPi Server website (enabled in the "Manage Website Languages" panel in Admin mode) and preferably also be able to retrieve the path to the flag icon and of course the culture name/ID.

I'm using EPiServer 6 R2 so if the code works for that version it would be lovely. Pointing me in the right direction would be great too.

도움이 되었습니까?

해결책 2

In EPiServer.DataAbstraction you have LanguageBranch.ListEnabled().

Take a look at this file to see how it's bound in Admin mode: C:\Program Files (x86)\EPiServer\CMS\6.1.379.0\Application\UI\CMS\Admin\EditLanguageBranches.aspx

다른 팁

You mean

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

However you should really not be using the ServiceLocator at all and instead take a ILanguageBranchRepository as a constructor parameter that will be automatically resolved by StructureMap. This gives your class a clear list of its dependencies and makes unit testing it a lot easier as you don't have to mock the ServiceLocator.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top