“如何改变”;MediaLinkPrefix";在sitecore中以编程方式?
我知道“MediaLinkPrefix”可以在web.config中更改。但是否可以通过编程方式更改“MediaLinkPrefix”?谢谢 您可以通过创建自己的“如何改变”;MediaLinkPrefix";在sitecore中以编程方式?,sitecore,sitecore6,sitecore-media-library,Sitecore,Sitecore6,Sitecore Media Library,我知道“MediaLinkPrefix”可以在web.config中更改。但是否可以通过编程方式更改“MediaLinkPrefix”?谢谢 您可以通过创建自己的Sitecore.Links.LinkProvider实现,并在您的web.config中的部分中进行设置 我不知道具体的实现,但您可以从Sitecore.Links.LinkProvider继承一个类,然后重写GetItemUrl()方法。 然后将您的类配置为用作LinkManager。以回答您的特定问题。不可以。您不能以编程方式更改
Sitecore.Links.LinkProvider
实现,并在您的web.config中的
部分中进行设置
我不知道具体的实现,但您可以从Sitecore.Links.LinkProvider
继承一个类,然后重写GetItemUrl()方法。
然后将您的类配置为用作LinkManager。以回答您的特定问题。不可以。您不能以编程方式更改该设置的值 如果您试图使用
Sitecore.Resources.Media.MediaManager.GetMediaUrl(mediaItem)
来获取mediaItem
的URL,那么这就是利用Sitecore.Resources.Media.MediaProvider
,它从Sitecore.Resources.Media.MediaConfig
类中提取MediaLinkPrefix
的值。该属性没有“setter”。此外,该属性的值实际上来自Sitecore.Configuration.Settings.Media.MediaLinkPrefix
,它也没有setter,直接从配置文件中提取
MediaManager
是一个静态类,我认为不能用自定义实现替换它。而且,与LinkManager
不同,MediaManager
是硬编码的,用于使用Sitecore.Resources.Media.MediaProvider
,因此您也不能编写自定义提供程序