public AnimalController() { var membershipUser = Membership.GetUser(); if (membershipUser != null && membershipUser.ProviderUserKey != null) { string[] roles = Roles.GetRolesForUser(membershipUser.UserName); var userKey = (int)membershipUser.ProviderUserKey; _dataEntryService = new DataEntryService(new ModelStateWrapper(ModelState), _uow, userKey); _projectuservalidationservice = new ProjectUserValidationService(new ModelStateWrapper(ModelState), _uow, userKey, roles); } else { throw new UnauthorizedAccessException("MembershipUser or ProviderUserKey is null - Is the user authenticated?"); } var DisplayTimeUnit = _displaytimeunit; var DisplayUnit = db.Units.Where(u => u.Status == "Current" && u.UnitName == DisplayTimeUnit); if (DisplayUnit.Count() != 1) { throw new UnauthorizedAccessException("Time unit not recognized! Please contact administrator."); } }
public DataEntryController() { var membershipUser = Membership.GetUser(); if (membershipUser != null && membershipUser.ProviderUserKey != null) { string[] roles = Roles.GetRolesForUser(membershipUser.UserName); var userKey = (int)membershipUser.ProviderUserKey; _dataEntryService = new DataEntryService(new ModelStateWrapper(ModelState), _uow, userKey); _projectuservalidationservice = new ProjectUserValidationService(new ModelStateWrapper(ModelState), _uow, userKey, roles); } else { throw new UnauthorizedAccessException("MembershipUser or ProviderUserKey is null - Is the user authenticated?"); } }
static void Main(string[] args) { var maxFields = 10000L; var fieldGenerationInterval = TimeSpan.Zero; var annotationRepublishInterval = TimeSpan.FromSeconds(1); var fieldRepublishInterval = TimeSpan.FromSeconds(1); var failOnAnnotateSaveOnEvery = 2; var failOnAnnotateAckOnEvery = 2; var failOnAnnotateOnEvery = 2; var fieldService = new FieldService(fieldGenerationInterval, maxFields, failOnAnnotateSaveOnEvery); using (var dataEntryService = new DataEntryService(fieldService)) using (var annotationService = new AnnotationService( dataEntryService.AnnotateField, annotationRepublishInterval, failOnAnnotateAckOnEvery, failOnAnnotateOnEvery)) { dataEntryService.StartPublishing( annotationService.Annotate, annotationService.Acknowledge, fieldRepublishInterval); bool consistency = false; var timer = new Stopwatch(); timer.Start(); Observable .Interval(TimeSpan.FromSeconds(1)) .TakeUntil(_ => consistency) .Subscribe(_ => { var fields = fieldService.Fields; var fieldCount = fields.Count; var annotatedFieldCount = fields.Where(field => field.ActiveAnnotation != null).Count(); var annotations = annotationService.Annotations; if (fieldCount == annotatedFieldCount) { consistency = true; } Console.WriteLine($"Execution Seconds: {timer.Elapsed.TotalSeconds.ToString("#")}"); Console.WriteLine($"Field Count: {fieldCount}"); Console.WriteLine($"Annotated Field Count: {annotatedFieldCount}"); Console.WriteLine($"Annotations Count: {annotations.Count}"); Console.WriteLine($"Unannotated Field Count: {fieldCount - annotatedFieldCount}"); Console.WriteLine(); if (consistency) { timer.Stop(); Console.WriteLine("------------------------------"); Console.WriteLine("Eventual Consistency Achieved!"); Console.WriteLine("------------------------------"); } }); Console.ReadKey(); } }