2012-11-07 102 views
2

我正在研究用於電子郵件模板系統的RazorEngine獲取剃刀模板的動態模型屬性列表

該系統將有很多不同的電子郵件模板,所以我不想爲每個模板創建一個分型模型。

是否有可能使用動態模型並檢索動態模型應具有的所有屬性列表?

例如:

查看/模板

@model dynamic 

Lorem ipsum Lorem ipsum Lorem ipsum Lorem ipsum @Model.Customer Lorem ipsum Lorem ipsum 
Lorem ipsum Lorem ipsum Lorem ipsum @Model.Product Lorem ipsum Lorem ipsum Lorem ipsum 

從該視圖/模板我希望能夠檢索以下列表(之前叫Razor.Parse):
客戶
產品

使用該列表,我將能夠創建我的動態模型(包含客戶和產品屬性),可用於調用Razor.Parse。

這是可能的,如果是的話,我該怎麼做?有替代品嗎?

謝謝你的時間!

回答

0

如果你足夠了解的模型就知道它有一個客戶和產品比你應該使用一個基類,你的所有電子郵件項繼承:

public class EmailItem 
{ 
    public string Customer {get;set;} 
    public string Product {get;set;} 
} 

,然後用它作爲你的模型。

然後,你將在該項目能像這樣:

public class Sale: EmailItem 
{ 
    // inherits EmailItem properties... 
}