问题标签 [episerver-7]
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.
asp.net-mvc - 将项目作为 MVC 进行时,episerver 7 中的“链接不正确”
我刚刚创建了一个新的 EpiServer 7 MVC 项目并创建了我的第一个页面类型和页面,即起始页面。在管理员模式下,我可以看到起始页,如果我在起始页控制器中单步执行,我可以看到“currentPage”具有值。
但是,如果我以正常模式(不在管理员中编辑)进入页面,我只会得到“不正确的链接”。如果我单步执行,我还会看到控制器中的“currentPage”为空。我认为 EpiServer 成功调用正确的控制器和操作,然后无法渲染它(它也找到了视图),这很奇怪。我不知道发生了什么事。我看不出与我之前设置的有效网站的方式有什么不同。
例外是
如果我使用 webforms(没有 MVC)创建一个项目,它可以工作,但是当我将 MVC 项目合并到 EPI 项目时,就会发生这种情况。
我不知道出了什么问题,所以谢谢你的回答!
episerver-7 - 如何禁用全球化?
如何禁用全球化(我的意思是我只需要一种语言),这样我就不会得到这种链接:
/en/...&epslanguage=en
提前致谢。
episerver - StructureMap 异常代码:在 EPiServer 7 中打开访客组选项卡时出现 202
我已经创建了一个访问者组,并且正在尝试将一个类注入其中。我将所有类都连接起来并在我将其注入块的站点中运行良好。
当我在 CMS 中打开访客组选项卡时,出现以下异常:
StructureMap 异常代码:202 没有为 PluginFamily EPiServer.ServiceLocation.ServiceAccessor`1 定义默认实例 [[Bennetts.Site.Community.Membership.IMemberFactory,Bennetts.Site.Community,Version=1.0.0.0,Culture=neutral,PublicKeyToken=null] ],EPiServer.Framework,版本=7.0.859.16,文化=中性,PublicKeyToken=8fe83dea738b45b7
站点 DependencyResolverInitialization 模块中的代码是:
标准是:
我怀疑问题是模块区域有自己的 StructureMap 容器。是这样吗?如果是这样,确保您的映射得到执行的最佳方法是什么?
episerver - EpiServer如何获取特定页面的Link URL?
我需要将博客页面的 LinkURL 与起始页上的链接按钮绑定。我所做的实际上是找到该页面 ID 并使用它获取页面引用。
这很简单,但我不高兴页面 ID 是硬编码的。有没有更好的方法,比如按页面名称获取页面?或任何其他方式?
提前致谢 :)
dojo - 如何为 dijit.form.ComboBox 保存 ID
我正在为 EPiServer 编写我的第一个 dijit 控件。在我的模板中,我使用的是 dijit.form.ComboBox。
我已将事件处理程序附加到“onChange”事件,如下所示:
然后在我的事件处理程序中,我有:
我的问题是,与典型的下拉列表一样,我想存储值而不是文本。我的组合框中的选项如下所示:
价值 | 正文 1 | 《测试》2 | “不一样的考验”
问题是传递给 _onInputWidgetChanged 处理程序的值始终是组合框的文本值,即“测试”或“不同的测试”
我怎样才能访问价值呢?正如我所说,这是我第一次使用 dojo 和 dijit,所以我可能在这里遗漏了一些基本的东西。
提前感谢艾尔
dojo - 使用保存的值设置 dijit FilteringSelect 的值
我为 EPiServer 开发了一个 dijit 小部件。在小部件中有一个 FilteringSElect,它从 REST 存储中获取数据。填充 FilteringSelect 的值是数字 Id 和文本值。
EPiServer 保存值时,保存的是数值(Id)。
我的整个小部件看起来像这样:
这可能不是编写 dojo/dijit 小部件的正确方法——这是我的第一次。
在我的 Rest Store 中,我有两种方法,Get(string name) 和 GetUserById(int userId)。
Get 方法的值被返回,我推测是因为 Get 是 dojo 正在寻找的默认方法。因此,当用户在 FilteringSelect 中键入一个值或从 FilteringSelect 中选择下拉列表时,加载后,它会填充从 Get 方法返回的所有值。
但是,如果在加载小部件时它已经有一个值(因为它保存在 EPiServer 中)我想从我的商店调用不同的方法并只返回 1 条记录 - 在这种情况下,要返回的记录将是一个用户帐户具有相同的 ID。
身份证 | 值 1 | “用户 1”2 | “用户 2” 3 | “用户 3”
我正在苦苦挣扎的是如何从 store 中调用方法,然后显示 FilteringSelect 中返回的值。
这是我第一次使用 dojo 或 dijit,所以我可能会做一些根本错误的事情。
任何人都可以给我一个指针吗?
非常感谢艾尔
c# - 使用反射和 GetValue 问题
我有一个看起来像这样的抽象类:
还有一个派生自 PageObjectsBase 的类:
以及 PageRatingList.PageRatings 持有的 PageRating 类:
PageRatingList 存储在数据库中(EPiServer 的动态数据存储,更具体地说,使用页面对象管理器)。我需要创建一些报告功能,并且实际上是在加载从 PageObjectBase 派生的所有报告。在返回数据时,代码在编译时永远不会知道要加载什么类型的数据,所以我使用反射。在我的报告课上,我有:
然后我可以使用以下方法遍历 PropertyInfo 对象:
我遇到的问题是我无法弄清楚如何获取每个 propertyinfo 对象的值。此外,其中一个属性是 List 类型,并且在运行时之前我们不会知道 T 的类型。因此,我还需要一些逻辑来检查其中一个 PropertyInfo 对象是否为 List 类型,然后提供对 List 中每个属性的访问 - List 的类型为 PageRating。
有人可以在这里帮忙吗?我过去并没有真正使用过反射,所以我正在努力通过它,无论对错!
非常感谢艾尔
ajax - 在 MVC 4 中创建链接 Ajax.ActionLink
作为 Ajax 的新手,我需要有关如何添加查询字符串和调用索引操作而无需回发的帮助。现在链接看起来像这样:
我的猜测是使用 Ajax.ActionLink 但我如何创建查询字符串?
content-management-system - 从块 ContentReference 中检索页面
是否可以检索在 EPIserver 7 中使用共享块实例的页面。
episerver - 我如何知道是哪个标签导致控制器被选中?
在 EPiServer CMS 7 中,可以使用一个或多个标签来标记内容区域:
您可以连接页面类型和标签以创建具有TemplateDescriptor
属性的控制器的一种方法:
在上面的示例中,可能由于两个标签而选择了 SitePageDataController。有什么方法可以在运行时找出导致选择当前控制器的标签?
他们是我可以在我的控制器操作中调用的 API 来获取标签吗?