在 Web 表单中,我会在我的模型中使用构造函数依赖注入,如下所示:
[SitecoreType(AutoMap = true)]
public class Article
{
private readonly ICommonService _commonService;
public Article(ICommonService commonService)
{
_commonService = commonService;
}
[SitecoreId]
private Guid Id { get; set; }
public string Title { get; set; }
[SitecoreIgnore]
public string GetTestString
{
get { return _commonService.GetTestString(); }
}
}
这里的想法是将逻辑移动到服务中并与 DI 保持松散耦合。因此,Glass 提供了原始的 Sitecore 数据,然后服务帮助处理该数据或提取额外数据以完成模型。
是否可以参考解析 DI 的模型进行视图渲染并且模型可以使用?:@inherits Glass.Mapper.Sc.Web.Mvc.GlassView
目前,当我尝试这样做时,我得到 No parameterless constructor defined for this object
我可以通过使用控制器并通过控制器将依赖项传递给模型来完成上述工作。
是否有可能在简单的视图渲染中进行这项工作,从而为除了简单的 Glass ORM 数据之外还需要逻辑的模型创建控制器视图?
目前发布在 Glass Mapper Google Group 中:https ://groups.google.com/forum/#!topic/glasssitecoremapper/BJnfQGXR7S8