public void ManyToOneField_CreateInstanceTest() { // Model Data : Trainee, Groupe, Speciality using (ModelContext db = new ModelContext()) { Panel Container = new Panel(); Size SizeLabel = new Size(100, 20); Size SizeControl = new Size(100, 20); IGwinBaseBLO GroupeBLO = new GwinBaseBLO <Group>(db); PropertyInfo TaskProjectsPropertyInfo = typeof(Group).GetProperty(nameof(Group.TaskProjects)); ConfigEntity configEntity = ConfigEntity.CreateConfigEntity(typeof(Group)); Trainee trainee = new Trainee(); ManyToManyField ManyToManyField = new ManyToManyField( TaskProjectsPropertyInfo, Orientation.Vertical, SizeLabel, SizeControl, configEntity, Container, GroupeBLO); // Selected the first speciality // selectedindex = 1 , index 0 for EmptyData ManyToManyField .SelectionFilterManager .ListeComboBox[typeof(Project).Name] .SelectedIndex = 1; } }
public void Register(IKernelInternal kernel) { //kernel.Register( // Component.For<SecurityInterceptor>() // .ImplementedBy<SecurityInterceptor>()); kernel.Register(Component.For <SecurityAspect>()); kernel.Register(Component.For <LoggingAspect>()); // Registrer All BLO Objects foreach (Type EntityType in new GwinEntitiesManager().GetAll_Entities_Type()) { Type BLOEntity_Type = GwinBaseBLO <BaseEntity> .Detemine_Type_EntityBLO(EntityType, GwinApp.Instance.TypeBaseBLO); // kernel.Register( //Component.For(BLOEntity_Type).ImplementedBy(BLOEntity_Type) // .Interceptors( // InterceptorReference.ForType<SecurityInterceptor>()).Anywhere); kernel.Register( Component.For(BLOEntity_Type).ImplementedBy(BLOEntity_Type) .Interceptors( typeof(SecurityAspect), typeof(LoggingAspect))); } }
public void ManyToOneField_WithOutFilter() { // Model Data : Trainee, Groupe, Speciality using (ModelContext db = new ModelContext()) { Panel Container = new Panel(); Size SizeLabel = new Size(100, 20); Size SizeControl = new Size(100, 20); IGwinBaseBLO GroupeBLO = new GwinBaseBLO <Group>(db); PropertyInfo SpecialtyPropertyInfo = typeof(Group).GetProperty(nameof(Group.Specialty)); ConfigEntity configEntity = ConfigEntity.CreateConfigEntity(typeof(Group)); Group trainee = new Group(); Specialty Specialty = db.Specialtys.Where(s => s.Reference == "TDI").SingleOrDefault(); ManyToOneField manyToOneField = new ManyToOneField( GroupeBLO, SpecialtyPropertyInfo, Container, Orientation.Vertical, SizeLabel, SizeControl, Specialty.Id, configEntity, trainee); // Selected the first Groupe manyToOneField.SelectedIndex = 0; } }
public void GwinAppStart() { GwinApp.Start(typeof(ModelContext), typeof(BaseBLO <>), new FormApplication(), null); configEntity = ConfigEntity.CreateConfigEntity(typeof(TaskProject)); Entity = new TaskProject(); entityMiniConfigBLO = GwinBaseBLO <BaseEntity> .CreateBLO_Instance(typeof(TaskProject), typeof(BaseBLO <>)); }
/// <summary> /// Create an Show ManagerForm /// </summary> /// <param name="EntityType">Type of Entity</param> /// <returns></returns> public ManagerForm ShowManagerForm(Type EntityType) { IGwinBaseBLO baseRepository = GwinBaseBLO <BaseEntity> .CreateBLO_Instance(EntityType, GwinApp.Instance.TypeBaseBLO); ManagerForm form = new ManagerForm(baseRepository, null, null, (Form)this.MdiForm); this.ShwoForm(form); return(form); }
public void ApplyBusinessRolesAfterValuesChangedTest() { TaskProject EntityMiniConfig = new TaskProject(); EntityMiniConfig.Title.Current = "Hello"; // Create entityMinConfigBLO dynamicly IGwinBaseBLO entityMinConfigBLO = GwinBaseBLO <BaseEntity> .CreateBLO_Instance(typeof(TaskProject), typeof(BaseBLO <>)); entityMinConfigBLO.ApplyBusinessRolesAfterValuesChanged(nameof(TaskProject.Title), EntityMiniConfig); Assert.AreEqual(EntityMiniConfig.Title.Current, "HELLO"); }
public void ManyToOneField_Form() { using (ModelContext db = new ModelContext()) { IGwinBaseBLO GroupeBLO = new GwinBaseBLO <Group>(db); Dictionary <string, object> filter = new Dictionary <string, object>(); Specialty Specialty = db.Specialtys.Where(s => s.Reference == "TDI").SingleOrDefault(); filter.Add(nameof(Specialty), Specialty.Id); BaseEntryForm GroupeEntryForm = new BaseEntryForm(GroupeBLO, null, filter, true); } }
public void Add_BaseEntryFormTest() { // Test All EntryForm using (ModelContext db = new ModelContext()) { foreach (var item in new GwinEntitiesManager().GetAll_Entities_Type()) { IGwinBaseBLO EntityBLO = GwinBaseBLO <BaseEntity> .CreateBLO_Instance(item, GwinApp.Instance.TypeBaseBLO); BaseEntryForm baseEntryForm = new BaseEntryForm(EntityBLO); } } }
/// <summary> /// Constructor : Create Application Menu /// </summary> /// <param name="FormMenu">MDI Form that cotain Menu of Application</param> public CreateApplicationMenu(IApplicationMenu FormMenu) { // Params this.MdiFormWithMenu = FormMenu; this.menuStrip = FormMenu.getMenuStrip(); // MenuStruct Instance MenuItems = new Dictionary <string, Type>(); MenuStruct = new MenuStruct(); // Properties this.ShowManagementForm = new CreateAndShowManagerFormHelper(GwinApp.Instance.TypeDBContext, FormMenu); this.MenuItemApplicationService = GwinBaseBLO <BaseEntity> .CreateBLO_Instance(typeof(MenuItemApplication), GwinApp.Instance.TypeBaseBLO); // Create Menu this.CalculateMenuItems(); this.ShowMenuItems(); }
/// <summary> /// Check if User Exist /// </summary> /// <param name="login">Login </param> /// <param name="password">Password </param> /// <returns>Existance User or Null</returns> private User CheckUser(string login, string password) { // Create UserBLO Instance IGwinBaseBLO userBLO = GwinBaseBLO <User> .CreateBLO_Instance(typeof(User), GwinApp.Instance.TypeBaseBLO); Dictionary <string, object> rechercheInfos = new Dictionary <string, object>(); rechercheInfos.Add(nameof(User.Login), "=" + login); rechercheInfos.Add(nameof(User.Password), "=" + password); List <object> resultat = userBLO.Recherche(rechercheInfos); if (resultat != null && resultat.Count > 0) { return(resultat[0] as User); } else { return(null); } }
public void ManyToOneField_WithFilter() { // Model Data : Trainee, Groupe, Speciality using (ModelContext db = new ModelContext()) { Panel Container = new Panel(); Size SizeLabel = new Size(100, 20); Size SizeControl = new Size(100, 20); IGwinBaseBLO TraineeBLO = new GwinBaseBLO <Trainee>(db); PropertyInfo groupePropertyInfo = typeof(Trainee).GetProperty(nameof(Trainee.Group)); ConfigEntity configEntity = ConfigEntity.CreateConfigEntity(typeof(Trainee)); Trainee trainee = new Trainee(); ManyToOneField manyToOneField = new ManyToOneField( TraineeBLO, groupePropertyInfo, Container, Orientation.Vertical, SizeLabel, SizeControl, 0, configEntity, trainee); // Selected the first speciality // selectedindex = 1 , index 0 for EmptyData manyToOneField .SelectionFilterManager .ListeComboBox[typeof(Specialty).Name] .SelectedIndex = 1; // Selected the first Groupe manyToOneField.SelectedIndex = 0; } }
/// <summary> /// /// </summary> /// <param name="AppMenu">Main Form application, /// it contrain the menu of application /// it is Mdi Form /// </param> /// <param name="user">Connected user, /// it can be null if the user is not yet connected /// </param> /// <param name="TypeDbContext"> /// Type of EntityFramework DbContext /// id used to create instance of GwinApp EntityBAO object /// </param> public static void Start(Type TypeDbContext, Type TypeBaseBLO, FormApplication AppMenu, User user) { // User must not be null CheckPramIsNull.CheckParam_is_NotNull(user, nameof(GwinApp), nameof(user)); // Lunch Loading Interface GwinApp.Loading_Start(); GwinApp.Loading_Status("Start Gwin Applicaton ..."); // Create GwinInstance to Authenticate GwinApp.Instance = new GwinApp(TypeDbContext, TypeBaseBLO, AppMenu, user); //Layer configuration : Initialize the dependency resolver DependencyResolver.Initialize(); // // Update Menu // // Change User Culture and Tread to do Update with User Language GwinApp.instance.CultureInfo = new CultureInfo(user.Language.ToString()); Thread.CurrentThread.CurrentCulture = GwinApp.instance.CultureInfo; Thread.CurrentThread.CurrentUICulture = GwinApp.instance.CultureInfo; // Update GwinApplicatio, after ModelConfiguration changes //[Update] // Must be befor Language Change, because SetLanguge Use MenuTable InstallApplicationGwinBLO installApplication = new InstallApplicationGwinBLO(TypeDbContext); installApplication.Update(); // Change Gwin Language if (AppMenu != null && user != null) { GwinApp.SetLanguage(GwinApp.Instance.CultureInfo); } // Load ApplicationName Instance IGwinBaseBLO ApplicationNameBLO = new GwinBaseBLO <ApplicationName>((DbContext)Activator.CreateInstance(instance.TypeDBContext)); List <object> ls_apps = ApplicationNameBLO.GetAll(); if (ls_apps != null && ls_apps.Count > 0) { GwinApp.instance.ApplicationName = (ApplicationName)ls_apps.First(); } else { ApplicationName applicationName = new ApplicationName(); applicationName.Name = new Entities.MultiLanguage.LocalizedString(); applicationName.Name.Current = "Gwin Application"; GwinApp.instance.ApplicationName = applicationName; } // Set Name Applicatoin in ApplicationMenu if (AppMenu != null) { AppMenu.Text = instance.ApplicationName.Name.Current; } // Close Loading Interface GwinApp.Loading_Close(); // Authentification Login(); }