public static AffiliateContactRepository InstantiateForMemory(RequestContext c)
        {
            AffiliateContactRepository result = null;

            result = new AffiliateContactRepository(c, new MemoryStrategy <Data.EF.bvc_UserXContact>(PrimaryKeyType.Long), new TextLogger());
            return(result);
        }
 public AffiliateRepository(RequestContext c, IRepositoryStrategy <Data.EF.bvc_Affiliate> r,
                            IRepositoryStrategy <Data.EF.bvc_UserXContact> sub, ILogger log)
 {
     context           = c;
     repository        = r;
     this.logger       = log;
     contactRepository = new AffiliateContactRepository(c, sub, this.logger);
     repository.Logger = this.logger;
 }
        public static AffiliateContactRepository InstantiateForDatabase(RequestContext c)
        {
            AffiliateContactRepository result = null;

            result = new AffiliateContactRepository(c,
                                                    new EntityFrameworkRepository <Data.EF.bvc_UserXContact>(
                                                        new Data.EF.EntityFrameworkDevConnectionString(c.ConnectionStringForEntityFramework)),
                                                    new SupressLogger());
            return(result);
        }