C# Glass.Mapper.Sc全局默认情况下将inferType设置为true

C# Glass.Mapper.Sc全局默认情况下将inferType设置为true,c#,sitecore,glass-mapper,C#,Sitecore,Glass Mapper,在Glass.Mapper.Sc v 4.0.1.5中,ISitecoreService和ISitecoreContext的所有方法签名的推断类型默认值为false。 我正在寻找一种方法来覆盖它,并默认为true,而不改变整个站点的方法调用 我创建了另一个接口来覆盖这些接口,只是为了将inferType默认值修改为true,但我想知道是否有更好的解决方案。没有自动覆盖来实现这一点,但在配置解析器管道中创建自己的任务可能更简单 如果您查看以下代码行: 您可以看到,它只是检查InferType标志

在Glass.Mapper.Sc v 4.0.1.5中,ISitecoreService和ISitecoreContext的所有方法签名的推断类型默认值为false。 我正在寻找一种方法来覆盖它,并默认为true,而不改变整个站点的方法调用


我创建了另一个接口来覆盖这些接口,只是为了将inferType默认值修改为true,但我想知道是否有更好的解决方案。

没有自动覆盖来实现这一点,但在配置解析器管道中创建自己的任务可能更简单

如果您查看以下代码行:

您可以看到,它只是检查InferType标志,您可以在请求开始时创建另一个管道,将其设置为true。然后,每个请求都将通过InferType强制执行


您需要使用Add方法在GlassMapperScCustom中针对DependencyResolver.ConfigurationResolverFactory注册新的管道进程。

感谢Mike的帮助,我希望使用config属性设置inferType和isLazy的默认值,而不是在接口中硬编码。也许可以考虑以后的版本: