使用Autofac进行FluentValidation

时间:2013-03-19 18:04:50

标签: c# autofac fluentvalidation

我们刚刚开始使用FluentValidation,并且已按照此帖子允许我们使用全球化值:http://fluentvalidation.codeplex.com/discussions/394471

但是,我们仍然坚持如何获取包含我们现有全球化价值观的翻译服务界面的参考。它包含在一个单独的项目中,因为它没有直接耦合到ASP.NET MVC,所以我们不能使用DependencyResolver。

是否有人知道我们可以将Interface或autofac容器放入TranslationServiceStringSource类以获取转换后的值?

1 个答案:

答案 0 :(得分:0)

我认为你在某处有类似的代码:

var container = builder.Build();
var resolver = new AutofacDependencyResolver(container);
DependencyResolver.SetResolver(resolver);

如果您将该引用存储在某个地方的容器中,我经常在MvcApplication类(global.asax.cs)中创建一个引用:

public static IContainer Container { get; set; }

然后你可以:

public TranslationServiceStringSource(string text) {
    _text = text;
    _translator = new MvcApplication.Container.Resolve<ITranslationService>(); 
}

虽然让AutoFac管理TranslationServiceStringSource会很好。