1

またはさらに良いことに...私が正しくしていないことがあります: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 では Public として宣言されているため、(理論的には) AdModel 内からそれらにアクセスする際に問題は発生しないはずです。

4

1 に答える 1

2

私はどこかで読んだ(ここはSOだと思う)、dotLiquidが変数名を「ルビゼーション」するので、ワイルドな推測{{Bedrooms}}{{bedrooms}}.

ゴーフィギュア

于 2013-11-15T22:25:20.450 に答える