稍后更新 所以,花了一些时间试图解决这个问题,我得到了这个: 在sitecore.config中有一个部分,您可以在其中定义您的网站。当我尝试设置自定义登录页面时,我将“loginPage”属性添加到“网站”网站元素,但它不起作用。
有一次,我意识到我必须将名称从“网站”更改为“myhost_name”,并且登录页面开始按预期工作,但事实证明删除“网站”网站元素并不是很明亮想法因为网站开始出现这种不稳定的行为。
有谁知道这种情况的正确设置是什么?我没有在这个问题上找到Sitecore文档。
谢谢
我有以下问题(我是Sitecore开发的新手,所以它可能是一些简单的东西,但我无法弄明白)
我有一个模板,用于显示我将在网站上显示的一些错误消息,并且我在内容下有一个文件夹,用于存储此项目
我在模板上添加了3个字段: - 类型 - ResultKey - 消息
所有这些都是单行文字
现在,在视觉工作室中,我有一个例行程序可以做到这一点:
/// <summary>
/// Get an Item by path
/// </summary>
public Item GetItemByPath(string itemPath)
{
return Sitecore.Context.Database.GetItem(itemPath);
}
我还有另一个应该返回ViewModel
的人public ModelValidation GetMessageByName(string itemName, string xpath)
{
var mess = GetItemByPath(xpath + itemName);
if (mess == null) return new ModelValidation(3, itemName);
int type;
string stype = "";
string message = "";
mess.Fields.ReadAll();
if (mess.Fields["Type"] == null)
stype = "3";
else
stype = mess.Fields["Type"].Value;
if (!int.TryParse(stype, out type))
type = 3;
if (String.IsNullOrEmpty(mess.Fields["Message"].Value))
message = itemName;
else
message = mess.Fields["Message"].Value;
return new ModelValidation(type, message);
}
问题: 返回该项,所有字段都已就位,但我的字段值为“”(String.Empty)
我做错了什么? 这些项目在Sitecore中具有值并且已发布(我检查了Web数据库)
上下文 Sitecore 8.1 VS 2013 MVC 5.2.3
谢谢
答案 0 :(得分:1)
以下是获得空结果的可能性。
答案 1 :(得分:0)
尝试将您的查询更改为:return Sitecore.Context.Database.GetItem(itemPath,Sitecore.Context.Language); 如果您未指定语言,则返回的项目可能使用与上下文不同的语言,因此您的数据为空。
祝你好运, ŁukaszSkowroński
答案 2 :(得分:0)
谢谢大家的意见。问题是有一个其他站点配置文件。 Stil没有解释意外的行为,但至少我解决了这个问题。