DotLiquid не разбирает мой шаблон
Или еще лучше... Что-то я не правильно делаю:s
Во всяком случае, это просто, у меня есть этот класс
[LiquidType("RegionName", "AreaName", "PropertyName", "PropertyAddress", "PropertyZipCode", "PropertyId", "YearBuilt", "CommunitySpecial", "PropertyPhone", "PetPolicy", "Ammenities", "Features", "ComissionRate", "Bedrooms", "Price", "Size", "Bathrooms", "Images", "Floorplan")]
public class AdModel:Ad
{
public String BaseFolder;
protected String PropertyId { get; set; }
protected String RegionName { get; set; }
protected string CommunitySpecial { get; set; }
protected string PetPolicy { get; set; }
protected string Ammenities { get; set; }
protected string Features { get; set; }
protected string ComissionRate { get; set; }
protected String[] Images { get; set; }
protected String Floorplan { get; set; }
protected Byte[] FloorplanImage { get; set; }
protected Byte[][] PropertyImages { get; set; }
[...]
private String ParseTemplate(String templateFilePath)
{
var tpl = Template.Parse(File.ReadAllText(templateFilePath));
return tpl.Render(Hash.FromAnonymousObject(this));
}
[...]
}
и у меня есть этот шаблон:
{{Bedrooms}}Br in {{AreaName}} for only {{Price}}.
Когда я звоню ParseTemplate(somePath);
, результат, который я получаю: Br in for only
,
Что я делаю неправильно?
ПРИМЕЧАНИЕ. Свойства, которые не объявлены в AdModel и упомянуты здесь, объявлены как открытые в Ad, поэтому (теоретически) не должно возникнуть проблем с доступом к ним из AdModel.
1 ответ
Решение
Я где-то читал (я думаю, что это было именно так), что dotLiquid "Rubizes" имена переменных, так что дикое предположение оказалось {{Bedrooms}}
в {{bedrooms}}
,
Пойди разберись