C # DotLiquid NullReferenceException - PullRequest
       19

C # DotLiquid NullReferenceException

0 голосов
/ 12 января 2011

Я использую DotLiquid на последнем SVN коммите и пробую следующий "легкий" код.

Template.NamingConvention = new CSharpNamingConvention();
Book selectedBook = (Book)this.booksList.SelectedObject;

string pathToTemplate = "..\\..\\..\\Resources\\templates\\white.html";
string res = "";

res = File.ReadAllText(pathToTemplate);

// Parse and compile the template
Template template = Template.Parse(res);
Console.WriteLine(template.RenderAndRethrowErrors(Hash.FromAnonymousObject(new { book = selectedBook })));

Ошибка возникает в методе RenderAndRethrowErrors.

Вот трассировка стека:

at DotLiquid.Context.HandleError (Exception ex)

at DotLiquid.Block.<>c__DisplayClass1.<RenderAll>b__0(Object token)

   at System.Collections.Generic.List`1.ForEach(Action`1 action)

   at DotLiquid.Block.RenderAll(List`1 list, Context context, StringBuilder result)

   at DotLiquid.Block.Render(Context context, StringBuilder result)

   at DotLiquid.Template.RenderInternal(Context context, Hash registers, IEnumerable`1 filters)

   at DotLiquid.Template.Render(Hash localVariables, IEnumerable`1 filters, Hash registers)

   at DotLiquid.Template.RenderAndRethrowErrors(Hash hash)

   at Collect_It_All.CIA_Main.booksList_SelectedIndexChanged(Object sender, EventArgs e) in D:\Documents\Dev\ezcollector\solution\Collect-It-All\CIA_Main.cs:line 298

   at BrightIdeasSoftware.ObjectListView.OnSelectedIndexChanged(EventArgs e) in D:\Documents\Dev\ezcollector\solution\ObjectListView\ObjectListView.cs:line 7350
 ....

Однако это приводит к исключению NullReferenceException.

Book - это класс, расширяющий Drop, и этот метод вызывается в ObjectListView при изменении выбора.

Кто-нибудь может мне здесь помочь?

Приветствия

1 Ответ

1 голос
/ 12 января 2011

Пожалуйста, предоставьте шаблон и минимальный и воспроизводимый контрольный пример.

Редактировать: Я думаю, что проблема заключается в доступе к нулевому проиндексированному свойству (например, к IList).У меня есть исправление в моей github-вилке, которое также будет перенесено в основную ветку.

...