问题标签 [episerver]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
5 回答
1452 浏览

c# - ASP.NET 404 http模块

我使用名为 EPiServer 的 CMS 产品。我们需要创建自己的显示 404 的方法,而使用 .NET 的标准 customErrors 是无法实现的。我们编写了一个模块,用于检查HttpStatusCode. 我们在 EndRequest 方法中执行此操作。

如果状态为 404,我们向 EPiServer 查询相应的 404 页面,然后将请求转移到该页面。但是,这不会返回 404,即使我执行以下操作,也不会返回正确的状态:

同样,如果我执行 response.redirect 而不是 aTransferRequest那么它不是正确的 404,因为 url 已经改变了......

这样做的正确方法是什么?

提前感谢艾尔

0 投票
1 回答
522 浏览

selenium - EPiServer 中的自动化 UI 测试

您如何在像 EPiServer 这样的 CMS 上执行 UI 测试?编辑器根据页面类型创建内容,而您作为开发人员必须测试每个页面实例?

我们目前正在使用基于相应页面类型的动态创建的测试来测试 EPiServer 中的所有页面。然后我们的构建服务器每晚生成测试并启动 Selenium RC,确保我们的测试覆盖所有页面并每天运行。

它已经工作了多年,但出现了一些问题:

  • 它基于 Selenium RC 1.0.3,现在似乎已弃用,取而代之的是 WebDriver。
  • Seleniun RC 似乎只适用于较旧的 Firefox 版本,当我升级到最新版本 (10) 时,它停止工作

我想做的是找出如何迁移到 WebDriver 方法并保留让测试在运行中生成的可能性,或者指向另一个可以给我带来相同好处的设置。

我该怎么办?

0 投票
2 回答
511 浏览

episerver - 添加指向 EPiServer 帮助菜单的链接

我在 EPiServer 6 R2 站点上工作,客户想要添加一个链接到显示在界面右上角的帮助菜单。目前它列出了 CMS、Composer、在线中心等,其中每一个都链接到外部网页。

有谁知道如何在此菜单中添加另一个链接?客户有自己的支持站点,他们希望链接到该站点。

谢谢艾尔

0 投票
2 回答
1233 浏览

c# - EPiServer 动态属性 null / 未更新

EPiServer (CMS 6 R1) 中的动态属性存在一些问题。我创建了一个在页面上使用的动态属性。不幸的是,该属性在现有页面上为空。如果我创建一个全新的页面,甚至复制现有页面,动态属性就可以正常工作。

有人对现有页面上的动态属性有一些经验吗?感觉就像旧的东西被保存在某个地方。我已经搜索了数据库,但找不到任何可以删除的内容。

编辑:感谢您的评论。我试图在页面本身和它的父级中设置属性。然后我使用 CurrentPage["fooproperty"] 来访问它。也没有其他名为“fooproperty”的属性,我尝试了一些不同的属性名称,但它们在现有页面上都是空的。如果我创建一个相同类型的新页面,动态属性就可以正常工作。

感谢您的帮助!

0 投票
1 回答
186 浏览

c# - EpiServer 属性的创建/使用

我在 ASP .net 4.0 平台上使用 EpiServer CMS 6。我可以在管理模式下创建一个属性就好了,但是有没有办法在 Visual Studio 中创建属性?(不一定是自定义属性,现在只是一个简单的 String 属性)。我是否正确地说唯一的方法是使用页面类型生成器?

0 投票
2 回答
688 浏览

asp.net - EPiServer 与 EPiServer 与页面类型生成器

在 EPiServer 中通过管理员模式创建属性和页面类型时,很容易理解如何写入数据库以更新网站的配置。但是,使用页面类型构建器,如果它像编写一样简单......

...创建一个新属性 - 什么时候存储在数据库中?运行?编译时间?

0 投票
1 回答
803 浏览

episerver - Episerver LinkItemCollection not visible to users

We are using PageTypeBuilder to define our PageTypes, on one page we have a property which represents a Link item collection as below:

We can populate this in CMS editor mode with links, save and publish without any errors. We then have a user control that inherits from EPiServer.UserControlBase and grabs the LinkItemCollection property using the below code and binds it to a repeater:

If I view the page when logged in as a CMS editor this page works fine and the links parameter is populated correctly, however if I view the page as a normal user and not logged in the links variable is always null (although when I'm debugging I can see the currentPage.Property["PageLinks"] is present, and the type is LinkCollection, its just that the Value is null

Is there something I need to configure here, permissions on a specific page type?

0 投票
2 回答
858 浏览

episerver - 如何更改 EPiServer 添加到 html 中的 src 属性的前缀

我有一个 html 片段,它包含在模板化 EPiServer 页面的属性中,在该 html 中有一个img标签,其中有一个相对 url。

查看页面时,我可以看到标记的 src 属性已更改为具有 prefix /ProjectName/Templates/Pages/

我知道这样做是为了正确定位HtmlRewriteToExternal与 aspx 模板(确实存在于其中Templates\Pages)一起存储的图像文件,但是在我的情况下,旨在成为 html 片段一部分的图像实际上存储在PageFiles/nnn/(其中 nnn 实际上是父页面的PageFolderID),我需要以某种方式使更改后的 html 反映这一点。

我创建了一个继承FriendlyUrlRewriteProvider并注册了我的类的类。我可以调试应用程序,并观察请求通过被覆盖的方法,但我仍然看不到前缀被添加到哪里,也不知道如何更改它。我可以在我的类中将 src 标记更改为不同的相对路径,但仍在添加前缀。

我已经阅读了我在 EPiServer url 重写中可以找到的所有内容,但找不到任何暗示该前缀被添加到何处或如何停止或更改它的任何内容。

我读过的东西:


对于我实际想要实现的目标,我愿意接受完全不同的解决方案,如下所示:

我有多个独立的静态 html 文件集和相关的图像/css/js 文件,我正在尝试使用 EPiServer 存储/发布它们。每组的结构看起来像

  • 设置文件夹/
    • htmlfileA.html
    • htmlfileB.html
    • css/
      • 样式.css
    • 图片/
      • piccy1.png
      • piccy2.png
    • js/
      • 魔术.js

我想我应该为集合创建一个 EPiServer 页面,然后为每个 html 文件创建子页面,将文件中的 html 存储在子页面的属性中。目前我将相关的静态文件存储在相关 setfolder 页面的 PageFiles 中,因为这似乎是放置它们的逻辑上最一致的位置。

0 投票
2 回答
748 浏览

setup-project - episerver 项目使用哪些 dll?

表观服务器安装将表观服务器程序集放在 GAC 中,我用 C:/windows/assembly 看到它们。

此外,在episerver 安装后,所有episerver dll 都存在于C:/Program files/Episerver 中。

当通过episerver部署中心或Visual Studio 2010使用episerver模板创建episerver项目时,我看到新创建的项目的bin文件夹包含很多episerver-dll,这并不奇怪。我想它们是从 C:/Program files/ 复制的。如果我在 Visual Studio 中打开项目,我会看到引用的是那些 dll,而不是来自 GAC 或 C:/program files/episerver 的那些 dll。

好吧,所有这些都非常令人困惑。为什么 Episerver 将 dll 放在 gac 中而不引用它们?处理对 Episerver dll 的引用以在团队中进行开发的最佳方法是什么?

此外,如果 Episerver 会引用 GAC 的 ddl,我将如何在 VS 中看到它。我的意思是,参考的属性是什么?

0 投票
1 回答
141 浏览

episerver - 是否可以根据文件类型和文件名对 ImageVault 进行排序?

我正在使用以下代码对 ImageVault 中的图像进行排序:

但是,我想对 IVFileSortBy.FileExtension 进行分组,然后对 FileName 进行排序这可能吗?