Glass.Mapper documentation states:
using Glass.Mapper.Sc.Configuration.Attributes; namespace Glass.Mapper.Sites.Sc.Models.Landing { public class HomePage { public virtual string Title { get; set; } public virtual string MainBody { get; set; } } }
您可以看到此课程不包含任何特殊标记 使用Glass.Mapper编写类时要记住的一件重要事情 是确保所有字段都标记为虚拟。 Glass.Mapper 可以使用a自动推断为模型加载哪些数据 按需映射和自动映射的组合。
它避免使用"按需"和"自动映射"但没有解释如何或为什么。
有谁知道为什么将这些字段标记为virtual
很重要?没有这个,似乎工作得很好。我没有看到任何东西继承字段和overrides
它们?
答案 0 :(得分:6)
如果您正在使用延迟加载,Glass映射器需要能够动态生成包装您的类的代理类。为了能够继承和覆盖您的属性,需要将它们标记为virtual
。