标签: sitecore7.2

'System.Web.Webpages.Html.Htmlhelper'不包含'Sitecore'的定义

当我使用时,我在Visual Studio中收到此错误@Html.Sitecore:

"System.Web.Webpages.Html.Htmlhelper"不包含"Sitecore的"和最佳推广方法重载"Sitecore.Mvc.HtmlHelperExtensions.Sitecore(System.Web.Mvc.HtmlHelper)"的定义有一些无效arguments.`

但是,一旦部署,它确实运行没有任何问题.

我正在使用Sitecore 7.2和MVC 5.1.

在此输入图像描述

我读过的文章涉及类似的错误消息,请谈谈文件夹文件的system.web.webPages.razor部分.这就是它在我的解决方案中的表现.Viewsweb.config

<system.web.webPages.razor>
<host factoryType="System.Web.Mvc.MvcWebRazorHostFactory, System.Web.Mvc, Version=3.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" />
<pages pageBaseType="System.Web.Mvc.WebViewPage">
  <namespaces>
    <add namespace="System.Web.Mvc" />
    <add namespace="System.Web.Mvc.Ajax" />
    <add namespace="System.Web.Mvc.Html" />
    <add namespace="System.Web.Routing" />
  </namespaces>
</pages>
Run Code Online (Sandbox Code Playgroud)

最初我以为我只需要重新启动VS,但这不起作用.有没有人有什么建议.

编辑 这是标准的Sitecore 7.2安装,因此具有以下绑定重定向:

  <dependentAssembly>
    <assemblyIdentity name="System.Web.Mvc" publicKeyToken="31bf3856ad364e35" xmlns="urn:schemas-microsoft-com:asm.v1"/>
    <bindingRedirect oldVersion="1.0.0.0-5.0.0.0" newVersion="5.1.0.0" xmlns="urn:schemas-microsoft-com:asm.v1"/>
  </dependentAssembly>
  <dependentAssembly>
    <assemblyIdentity name="System.Web.WebPages.Razor" publicKeyToken="31bf3856ad364e35" xmlns="urn:schemas-microsoft-com:asm.v1"/>
    <bindingRedirect oldVersion="1.0.0.0-3.0.0.0" newVersion="3.0.0.0" xmlns="urn:schemas-microsoft-com:asm.v1"/>
  </dependentAssembly>
Run Code Online (Sandbox Code Playgroud)

另外,在查看visual studio的输出时,还有一个我之前没有发现的错误:

Instance argument: cannot convert from 'System.Web.WebPages.Html.HtmlHelper' to 'System.Web.Mvc.HtmlHelper'

编辑2

我不再认为这是Sitecore MVC问题.我得到了类似的错误@Html.ActionLink("xxx", "xxx").其他人在VS2012中看到了这个问题,但我使用的是2013年.

编辑3 …

asp.net-mvc sitecore sitecore-mvc sitecore7.2

15
推荐指数
4
解决办法
3万
查看次数

Sitecore EventQueue表越来越失控

我们遇到的问题是EventQueue表有时会非常快速地增长,每秒最多3k条记录,并且永远不会清除记录(截至目前为3000万条记录).我们的环境有如下设置:

Sitecore 7.2

  • 4台CD服务器和1台CM服务器
  • 所有四个CD服务器都是负载平衡的.
  • CD1和CD2指向DB1服务器CD3,CD4指向DB2
  • 服务器有2个发布目标(每个数据库一个)合并
  • 在所有服务器(CM,CD)上为Core db设置复制
  • EventQueue已启用

我有几个问题,所以我将它们分解为单独的行项目.

  1. 当为所有CD服务器发布发布时,更新内容直接从CM数据库发送到CD数据库(所有正确的表),或者是否发送到CD数据库中的EventQueue表,并且CD服务器有一个作业/查看表并根据需要更新的任务.

  2. 根据第一个问题的答案,如果有2个CD服务器指向同一个DB,他们如何知道他们是否应该处理EventQueue表(他们不会每个处理表并重复工作)

  3. 为什么没有清除EventTable表?如何清除,何时清除?

sitecore sitecore7 sitecore7.2

13
推荐指数
1
解决办法
4765
查看次数

无法在sitecore项目上设置工作流程和工作流程状态属性

我目前正在开发一个项目,要求我设置一个非常简单的sitecore工作流程.在修改现有项目以使用我的新工作流程时,我遇到了一些困难.这就是我做的:

当contentmanager开始编辑项目时,工作流程会创建一个新版本,并在单击提交按钮时发布项目.

Sitecore工作流程项目

我将这些工作流程项添加到模板的标准值:

模板标准值的工作流程设置

下一步是在现有项目上设置工作流程设置.幸运的是,我们可以使用sitecore-powershell为我们这样做.

function SetWorkflow($item)
{
    $item.__Workflow = "{DE29E564-3157-4CAB-81B1-87DF2E983517}";
    $item."__Workflow state" = "{27633BF0-B76A-4450-A139-BA53F6943778}";
}

get-childitem . -recurse -Language * | foreach-object { SetWorkFlow($_) }
Run Code Online (Sandbox Code Playgroud)

此脚本运行没有错误.

现在开始有趣了:当我打开项目时,我在工作流和工作流状态属性上运行此脚本没有改变.奇怪的是,编辑说空值是从标准值继承的,虽然标准值不是空的,我设置了这些值!

项目的工作流程设置

你会说脚本可能已经失败并且没有设置任何值.除非我在sitecore-powershell中查看值,否则我可以看到值存在.

get-childitem . -recurse -Language * | Format-Table Id, Language, __Workflow, "__Workflow state"

ID                                                          Language                                                    __Workflow                                                  __Workflow state
--                                                          --------                                                    ----------                                                  ----------------
{208D79B1-5B42-4713-A7F9-F2109588F639}                      en                                                          {DE29E564-3157-4CAB-81B1-87DF2E983517}                      {27633BF0-B76A-4450-A139-BA53F6943778}
{208D79B1-5B42-4713-A7F9-F2109588F639}                      nl-NL                                                       {DE29E564-3157-4CAB-81B1-87DF2E983517}                      {27633BF0-B76A-4450-A139-BA53F6943778}
{3F3B1132-02DA-4E75-928F-BDB8AED5C3CD}                      nl-NL                                                       {DE29E564-3157-4CAB-81B1-87DF2E983517}                      {27633BF0-B76A-4450-A139-BA53F6943778}
{8AF23DC5-E7FE-47E3-AC65-AA3D41D81F97}                      en                                                          {DE29E564-3157-4CAB-81B1-87DF2E983517}                      {27633BF0-B76A-4450-A139-BA53F6943778}
{8AF23DC5-E7FE-47E3-AC65-AA3D41D81F97}                      nl-NL                                                       {DE29E564-3157-4CAB-81B1-87DF2E983517}                      {27633BF0-B76A-4450-A139-BA53F6943778}

etc.etc.
Run Code Online (Sandbox Code Playgroud)

我尝试手动设置项目的工作流程和工作流程状态属性.这有点工作,我可以通过工作流程一次.添加新版本时,工作流和工作流状态属性默认返回其"空"标准值,这会破坏该项目的工作流程.

有谁知道这里发生了什么?如何一劳永逸地设置工作流和工作流状态属性?

powershell workflow sitecore sitecore7.2

7
推荐指数
1
解决办法
1278
查看次数

无法实例化事件处理程序.键入:Sitecore.Publishing.HtmlCacheClearer

它突然间停止了工作.我不知道出了什么问题,是什么导致了这种情况:

无法实例化事件处理程序.键入:Sitecore.Publishing.HtmlCacheClearer.方法:ClearCaches(方法:Sitecore.Events.Event + EventSubscribers.Add(String eventName,XmlNode configNode)).

我尝试了所有可以使它工作的东西,但事实并非如此

  1. 从Sitecore 7.2重新复制我的Sitecore文件
  2. 重新索引我的索尔
  3. 创建了一个全新的Sitecore项目
  4. 重新发布完整的网站
  5. 把我的头撞在桌子上

任何人都可以告诉我这个的原因以及可能的解决方案.我是Sitecore的新手.

更新publish:endpublish:end:remote

 <event name="publish:end">
    <handler type="Sitecore.Publishing.HtmlCacheClearer, Sitecore.Kernel" method="ClearCaches">
      <sites hint="list">
        <site>website</site>
      </sites>
    </handler>
  </event>
  <event name="publish:end:remote">
    <handler type="Sitecore.Publishing.HtmlCacheClearer, Sitecore.Kernel" method="ClearCaches">
      <sites hint="list">
        <site>website</site>
      </sites>
    </handler>
  </event>
Run Code Online (Sandbox Code Playgroud)

c# solr sitecore sitecore-mvc sitecore7.2

7
推荐指数
1
解决办法
1076
查看次数

Sitecore Social Connector 2.1不与Sitecore 7.2一起使用

嗨,当我尝试在sitecore 7.2中安装Social Connected 2.1时,我收到此错误

找不到配置节点:contentSearch/configuration/defaultIndexConfiguration/analyzer

无法找到解决方案.

任何人都可以帮我解决这个问题.

提前致谢!

sitecore sitecore7 sitecore-social-connected sitecore7.2

6
推荐指数
2
解决办法
955
查看次数

Sitecore Glass Mapper始终为null

我正在使用Sitecore Glass Mapper来创建我正在设置的新项目.我们正在使用Sitecore 7.2,最新版本的Team Development for Sitecore(TDS)代码生成和最新版本的玻璃.

我试图执行的代码:

var b = new SitecoreContext();
var c = b.GetCurrentItem<T01_Homepage>();
Run Code Online (Sandbox Code Playgroud)

b不为空.c为空.

var d = b.GetItem<T01_Homepage>("path")
Run Code Online (Sandbox Code Playgroud)

d为空.

我在GlassMapperScCustom中添加了我的程序集:

public static IConfigurationLoader[] GlassLoaders(){            

    var attributes = new AttributeConfigurationLoader(new[] { "Company.Framework.Websites.Corporate", "Company.Framework.Core", "Company.Framework.Common" });

    return new IConfigurationLoader[] { attributes };
}
Run Code Online (Sandbox Code Playgroud)

当我查看b.GlassContext.TypeConfigurations时,我所有的模型都在那里.

我认为它可能是一个语言问题,因为该网站是荷兰语,也许错误的语言将被错误地解决.事实并非如此.

我禁用了WebActivator并在我的Global.asax Application_Start方法中添加了GlassMapperSc.Start().

我们也使用Autofac作为DI框架.但如果没有它,它仍然无法正常工作,如上所述.此外,当我创建自己的自定义模型而没有生成TDS代码时,结果GetCurrentItem<T>为null.

有谁知道如何解决这个问题?

code-generation sitecore tds glass-mapper sitecore7.2

6
推荐指数
1
解决办法
2814
查看次数

Sitecore 7.2 - 项目Web API - 用户身份验证

我想限制Sitecore的项Web API将数据发送到身份验证的用户只能与按文件,我们需要在通过用户名和密码http request headerX-Scitemwebapi-Username:X-Scitemwebapi-Password

为此,我使用下面的代码:

HttpWebRequest request = (HttpWebRequest)WebRequest.Create("http://scapidemo.local/-/item/v1/?sc_itemid={110D559F-DEA5-42EA-9C1C-8A5DF7E70EF9}&sc_database=master");

request.Headers["X-Scitemwebapi-Username"] = "admin";
request.Headers["X-Scitemwebapi-Password"] = "b";

HttpWebResponse response = (HttpWebResponse)request.GetResponse();
Response.Write(String.Format("Content length is {0}", response.ContentLength));
Response.Write(String.Format("Content type is {0}", response.ContentType));
// Get the stream associated with the response.
Stream receiveStream = response.GetResponseStream();

// Pipes the stream to a higher level stream reader with the required encoding format. 
StreamReader readStream = new StreamReader(receiveStream, Encoding.UTF8);

Response.Write("<br /> Response stream received. <br />");
Response.Write(readStream.ReadToEnd());
Run Code Online (Sandbox Code Playgroud)

Sitecore.ItemWebApi.config我添加了我的网站设置如下:

itemwebapi.mode="StandardSecurity"
itemwebapi.access="ReadOnly" …
Run Code Online (Sandbox Code Playgroud)

c# sitecore sitecore7.2

6
推荐指数
1
解决办法
1976
查看次数

我可以在富文本编辑器配置文件中设置图像插入按钮的根文件夹吗?

我们有一个多站点解决方案,我们希望为不同的站点建立不同的RTE配置文件.在这些配置文件中,我们希望能够在媒体库中设置特定于站点的Images文件夹.我们还想为"插入链接"按钮设置站点特定的根文件夹.

这可能是"开箱即用"吗?如果是这样,怎么样?

sitecore sitecore-media-library sitecore7.2

6
推荐指数
1
解决办法
687
查看次数

Sitecore 自定义多列表

在 Sitecore 中,我构建了两个自定义多重列表,其中第二个列表取决于第一个列表。唯一的问题是,选择第一个后,我必须在第二个多列表过滤项目之前保存该项目。

我的问题是,有人知道如何在 Sitecore 上创建两个自定义多重列表,其中第二个列表在选择第一个列表中的项目后自动过滤(无需保存事件),或者我可以覆盖哪个事件来执行此操作?

sitecore sitecore7 sitecore7.2

5
推荐指数
1
解决办法
359
查看次数

Sitecore获取渲染的Html

有没有办法根据代码背后的表示值获取项目的渲染html?在最近的项目中,这需要完成,我们正在利用另一个看起来很浪费的请求来抓取我们自己的网站.

asp.net webforms sitecore sitecore7.2

5
推荐指数
1
解决办法
826
查看次数