I guess it would depend on whether you intend to use the same assembly in multiple host applications. Does the assembly really require references to AutoFac? I would recommend against this, as if your requirements change later you would have a load of unnecessary references. Your host application should control how to assemble the modular parts, so I would leave configuration up to your host (in this case your web application. If you want to push some control of registration, you could create a type which handles the registration for you, but as I mentioned before, your assembly is essentially bound to using AutoFac e.g.:
public static class NewsRegistration()
{
public static void RegisterTypes(ContainerBuilder builder)
{
// Register your specific types here.
builder.RegisterType<NewsService>().As<INewsService>();
}
}
That way you could easily call:
var builder = new ContainerBuilder();
// Register common types here?
NewsRegistration.RegisterTypes(builder);
var container = builder.Build();