// TODO: Remove IQueryableRepository registration. IQueryableRepository should be cast from repository object in Rhetos.Dom.DefaultConcepts.GenericRepositories class. protected static string RegisterRepository(RegisteredInterfaceImplementationInfo info) { return string.Format( @"builder.RegisterType<{0}._Helper.{1}_Repository>().As<IQueryableRepository<{2}>>().InstancePerLifetimeScope(); ", info.ImplementsInterface.DataStructure.Module.Name, info.ImplementsInterface.DataStructure.Name, info.ImplementsInterface.GetInterfaceType().FullName); }
protected static string RegisterImplementationName(RegisteredInterfaceImplementationInfo info) { return string.Format( @"{{ typeof({0}), {1} }}, ", info.ImplementsInterface.GetInterfaceType().FullName, CsUtility.QuotedString( info.ImplementsInterface.DataStructure.Module.Name + "." + info.ImplementsInterface.DataStructure.Name)); }