我正在使用Sitecore 6.6。我想获得特定项目的所有字段。
我正在使用此
获取所有字段FieldCollection fieldcollection = Sitecore.Context.Database.GetItem(Id, LanguageManager.GetLanguages(Sitecore.Context.Database).Where(i => i.CultureInfo.ToString() == Globallanguage).FirstOrDefault(), Sitecore.Data.Version.Latest).Fields;
循环遍历每个字段并将项目添加到列表中
foreach (Field field in fieldcollection)
{
if(fields!=null)
{
.....
}
}
但是在返回一些字段之后它会给我一个错误
对象引用未设置为对象的实例。在Code.Pipeline.NotFoundRedirector.GetAllMappedUrls()
我想知道我是否使用正确的方法来获取所有字段
答案 0 :(得分:0)
我通过更改版本并添加getall()方法获得了所有字段
FieldCollection fieldcollection = Sitecore.Context.Database.GetItem(TargetId, LanguageManager.GetLanguages(Sitecore.Context.Database).Where(i => i.CultureInfo.ToString() == Globallanguage).FirstOrDefault(), Sitecore.Context.Database.GetItem(TargetId).Version).Fields;
fieldcollection.ReadAll();
循环像往常一样
foreach (Field field in fieldcollection)
{
if(fields!=null)
{
.....
}
}