我正在寻找允许用户下载存储在Sitecore媒体库中的PDF文件。 Basicaly,我正在发送一封电子邮件,其中包含用户可以下载的PDF文件的链接。Sitecore 8.0允许从媒体库中下载文件
这可能吗?如果有,请使用哪个网址?
我们使用的是Sitecore 8.1,.Net MVC和GlassMapper。 在玻璃映射伊夫尝试使用文件的src属性的模型作为HREF为其给人以ashx的文件,但是,这并不表现为运行路径的链接..
从我GlassMapper型号:
[SitecoreField("FileForDownload", UrlOptions = Glass.Mapper.Sc.Configuration.SitecoreInfoUrlOptions.AlwaysIncludeServerUrl)]
public virtual File FileForDownload { get; set; }
产生的FileForDownload.Src仍给予其可能导致5月的相对路径问题 如“/~/media/XXX/Annual_Report2004Version2.ashx
这可能是GlassMapper一个悬而未决的问题:enter link description here
我的电子邮件中的锚是用设置
<a href='" + pub.FileForDownload.Src + "' download>" + pub.Description + "</a>
香港专业教育学院还利用代码
MediaUrlOptions muo = new MediaUrlOptions();
muo.AlwaysIncludeServerUrl = true;
var item = Sitecore.Context.Database.GetItem(new ID(pub.Id));
String url = MediaManager.GetMediaUrl((MediaItem)item, muo);
尝试,但那给我一个网址,导致404:
http://domainname/-/media/C9F3404515DC46288C5D73E123ACBD5D.ashx
向我们展示您获取媒体项目网址的代码 –
您是否尝试添加名为“下载”的html属性? –
确保您的电子邮件中包含绝对URL而不是相对的。亲戚会在现场工作,但不会在电子邮件中工作。 – Anton