private void Generate( CreateViewOperation operation, MigrationCommandListBuilder builder) { try { var sqlHelper = Dependencies.SqlGenerationHelper; var assembly = AssemblyTool.GetAssemblyByName(operation.AssemblyName); string resourceName = assembly.GetManifestResourceNames() .Single(str => str.EndsWith(operation.ResourceSqlFileName)); using Stream stream = assembly.GetManifestResourceStream(resourceName); using StreamReader reader = new StreamReader(stream ?? throw new InvalidOperationException()); string result = reader.ReadToEnd(); _logger.LogDebug(result); builder.AppendLines(result) .AppendLine(sqlHelper.StatementTerminator) .EndCommand(); } catch (Exception ex) { _logger.LogError("Generate " + ex.Message + " " + ex.StackTrace); } }
private static void Init() { if (inspectorFieldParsers != null && inspectorTypeParsers != null) { return; } inspectorFieldParsers = new Dictionary <string, FieldInspectorParser>(); List <Type> parserTypes = AssemblyTool.FindTypesInCurrentDomainWhereExtend <FieldInspectorParser>(); foreach (var parserType in parserTypes) { var obj = ReflecTool.Instantiate(parserType); Debug.Log(parserType.ToString() + " " + (obj == null)); FieldInspectorParser fieldInspectorParser = obj as FieldInspectorParser; Debug.Log(parserType.ToString() + " " + (fieldInspectorParser == null)); inspectorFieldParsers.Add(fieldInspectorParser.Name, fieldInspectorParser); } inspectorTypeParsers = new Dictionary <Type, DefaultTypeInspector>(); parserTypes = AssemblyTool.FindTypesInCurrentDomainWhereExtend <DefaultTypeInspector>(); foreach (var parserType in parserTypes) { DefaultTypeInspector defaultTypeInspector = ReflecTool.Instantiate(parserType) as DefaultTypeInspector; inspectorTypeParsers.Add(defaultTypeInspector.GetInspectorType(), defaultTypeInspector); } }
// ConfigureContainer is where you can register things directly // with Autofac. This runs after ConfigureServices so the things // here will override registrations made in ConfigureServices. // Don't build the container; that gets done for you by the factory. public void ConfigureContainer(ContainerBuilder builder) { try { //Log. builder.RegisterModule(new KSociety.Base.Srv.Host.Shared.Bindings.Log()); //AutoMapper. builder.RegisterModule(new KSociety.Base.Srv.Host.Shared.Bindings.AutoMapper(AssemblyTool.GetAssembly())); //CommandHdlr. builder.RegisterModule(new CommandHdlr(AssemblyTool.GetAssembly())); //RabbitMQ. builder.RegisterModule( new MessageBroker(BrokerName, ExchangeType, ExchangeDurable, ExchangeAutoDelete, MqHostName, MqUserName, MqPassword, DebugFlag, QueueDurable, QueueExclusive, QueueAutoDelete)); //Transaction, don't move this line. builder.RegisterModule(new Bindings.Biz.Biz(DebugFlag)); } catch (Exception ex) { Console.WriteLine(@"Autofac ConfigureContainer: " + ex.Message + " " + ex.StackTrace); } }
/// <summary> /// 数据绑定到Gameobject /// </summary> /// <param name="go"></param> /// <returns></returns> public ReferenceObject BindInstance(GameObject go) { ReferenceObject component = ReferenceRoot.AddReference(AssemblyTool.FindTypesInCurrentDomainByName(RefType), go, null); this.state = SceneObjectState.binding; component.Data = this; return(component); }
protected virtual List <ItemDetailPartInspector <T> > CreatePartInspector() { List <ItemDetailPartInspector <T> > partInspectors = new List <ItemDetailPartInspector <T> >(); List <Type> partInspectorTypeSet = AssemblyTool.FindTypesInCurrentDomainWhereExtend <ItemDetailPartInspector <T> >(); foreach (var partInspector in partInspectorTypeSet) { ItemDetailPartInspector <T> itemDetailPartInspector = ReflecTool.Instantiate(partInspector) as ItemDetailPartInspector <T>; partInspectors.Add(itemDetailPartInspector); } return(partInspectors); }
static FieldDrawerUtil() { fieldDrawers = new Dictionary <Type, FieldDrawer>(); List <Type> drawers = AssemblyTool.FindTypesInCurrentDomainWhereAttributeIs <CustomFieldDrawer>(); foreach (var item in drawers) { if (item.IsSubclassOf(typeof(FieldDrawer))) { CustomFieldDrawer att = item.GetAttribute <CustomFieldDrawer>(); fieldDrawers[att.m_type] = ReflecTool.Instantiate(item) as FieldDrawer; } } }
private void Init() { if (inited == null) { List <Type> partInspectors = AssemblyTool.FindTypesInCurrentDomainWhereExtend <ItemDetailPartInspector <T> >(); foreach (var partInspector in partInspectors) { ItemDetailPartInspector <T> itemDetailPartInspector = ReflecTool.Instantiate(partInspector) as ItemDetailPartInspector <T>; itemDetailPartInspectors.Add(itemDetailPartInspector); } itemDetailPartInspectors.Sort( (l, r) => { return(l.Order - r.Order); }); OnInit(); inited = new object(); } }
public void RefreshTreeData(SeanLibManager drawer) { var editorTypes = AssemblyTool.FindTypesInCurrentDomainWhereAttributeIs <CustomSeanLibEditor>(); editorTypes.RemoveAll(e => ReflecTool.GetAttribute <CustomSeanLibEditor>(e).IsDoc != isdoc); editorTypes.Sort((l, r) => { return(ReflecTool.GetAttribute <CustomSeanLibEditor>(l).order - ReflecTool.GetAttribute <CustomSeanLibEditor>(r).order); }); editors = new List <SeanLibEditor>(editorTypes.Count); foreach (var item in editorTypes) { SeanLibEditor editor = ReflecTool.Instantiate(item) as SeanLibEditor; //editor.OnEnable(drawer); editors.Add(editor); } Reload(); }
private void Generate( CreateViewOperation operation, MigrationCommandListBuilder builder) { var sqlHelper = Dependencies.SqlGenerationHelper; //var stringMapping = Dependencies.TypeMappingSource.FindMapping(typeof(string)); var assembly = AssemblyTool.GetAssemblyByName(operation.AssemblyName); //var assembly = Assembly.GetExecutingAssembly(); //Console.WriteLine("Generate: " + assembly.FullName); string resourceName = assembly.GetManifestResourceNames().Single(str => str.EndsWith(operation.ResourceSqlFileName)); //Assembly.GetManifestResouceNames using Stream stream = assembly.GetManifestResourceStream(resourceName); using StreamReader reader = new StreamReader(stream ?? throw new InvalidOperationException()); string result = reader.ReadToEnd(); //.Split(new[] {Environment.NewLine}, StringSplitOptions.RemoveEmptyEntries); builder.AppendLines(result) .AppendLine(sqlHelper.StatementTerminator) .EndCommand(); }
public static IList ListEditor(string prefix, IList list, Type listType) { if (list == null) { list = ReflecTool.Instantiate(listType) as IList; } var argType = listType.IsArray ? listType.GetElementType() : listType.GetGenericArguments()[0]; //register foldout if (!registeredEditorFoldouts.ContainsKey(list)) { registeredEditorFoldouts[list] = false; } GUILayout.BeginVertical(); var foldout = registeredEditorFoldouts[list]; foldout = EditorGUILayout.Foldout(foldout, prefix); registeredEditorFoldouts[list] = foldout; if (!foldout) { GUILayout.EndVertical(); return(list); } if (list.Equals(null)) { GUILayout.Label("Null List"); GUILayout.EndVertical(); return(list); } GUILayout.BeginHorizontal(); GUILayout.Space(20); GUILayout.BeginVertical(); if (GUILayout.Button("Add Element")) { if (listType.IsArray) { list = ResizeArray((Array)list, list.Count + 1); registeredEditorFoldouts[list] = true; } else { object newElement = null; if (argType.IsValueType) { newElement = Activator.CreateInstance(argType); } if (!argType.IsInterface && !argType.IsAbstract && AssemblyTool.FindTypesInCurrentDomainWhereExtend(argType).Count == 1) { try { newElement = Activator.CreateInstance(argType); } catch (Exception) { } } list.Add(newElement); } GUI.FocusControl(""); } // EditorGUI.indentLevel++; for (var i = 0; i < list.Count; i++) { GUILayout.BeginVertical(GUITool.GetAreaGUIStyle(new Color(Color.grey.r, Color.grey.g, Color.grey.b, 0.3f))); GUILayout.BeginHorizontal(); GUILayout.BeginVertical(); ShowObject(list[i]); GUILayout.EndVertical(); // list[i] = GenericField("Element " + i, list[i], argType, null, null, false); if (GUILayout.Button("X", GUILayout.Width(18))) { if (listType.IsArray) { list = ResizeArray((Array)list, list.Count - 1); registeredEditorFoldouts[list] = true; } else { list.RemoveAt(i); } GUI.FocusControl(""); } GUILayout.EndHorizontal(); GUITool.Line(2); GUILayout.EndVertical(); } GUILayout.EndVertical(); GUILayout.EndHorizontal(); // EditorGUI.indentLevel--; Separator(); GUILayout.EndVertical(); return(list); }
// ConfigureContainer is where you can register things directly // with Autofac. This runs after ConfigureServices so the things // here will override registrations made in ConfigureServices. // Don't build the container; that gets done for you by the factory. public void ConfigureContainer(ContainerBuilder builder) { try { //Log. builder.RegisterModule(new Base.Srv.Host.Shared.Bindings.Log()); //AutoMapper. builder.RegisterModule(new KSociety.Base.Srv.Host.Shared.Bindings.AutoMapper(AssemblyTool.GetAssembly())); //DatabaseConfiguration. builder.RegisterModule(new KSociety.Base.Srv.Host.Shared.Bindings.DatabaseConfiguration(DatabaseEngine.Sqlserver, MasterString, DebugFlag, MigrationsAssembly)); //MediatR. builder.RegisterModule(new KSociety.Base.Srv.Host.Shared.Bindings.Mediatr()); //Common. builder.RegisterModule(new Bindings.Common.Repository()); builder.RegisterModule(new Bindings.Common.QueryListGridView()); builder.RegisterModule(new Bindings.Common.QueryModel()); builder.RegisterModule(new Bindings.Common.QueryViewListGridView()); //S7 builder.RegisterModule(new Bindings.S7.Repository()); builder.RegisterModule(new Bindings.S7.QueryListGridView()); builder.RegisterModule(new Bindings.S7.QueryModel()); //Logix. builder.RegisterModule(new Bindings.Logix.Repository()); //builder.RegisterModule(new Bindings.Logix.QueryListGridView()); builder.RegisterModule(new Bindings.QueryViewJoinedListGridView()); //UnitOfWork. builder.RegisterModule(new KSociety.Base.Srv.Host.Shared.Bindings.UnitOfWork <ComContext>()); builder.RegisterModule(new KSociety.Base.Srv.Host.Shared.Bindings.DatabaseControl <ComContext>()); //CommandHandler. builder.RegisterModule(new KSociety.Base.Srv.Host.Shared.Bindings.CommandHdlr(AssemblyTool.GetAssembly())); //DatabaseFactory builder.RegisterModule(new KSociety.Base.Srv.Host.Shared.Bindings.DatabaseFactory <ComContext>()); //RabbitMQ. builder.RegisterModule( new ComMessageBroker( BrokerName, ExchangeType, ExchangeDurable, ExchangeAutoDelete, MqHostName, MqUserName, MqPassword, DebugFlag, QueueDurable, QueueExclusive, QueueAutoDelete)); //Transaction, don't move this line. builder.RegisterModule(new Bindings.Transaction(DebugFlag)); } catch (Exception ex) { Console.WriteLine(@"Autofac ConfigureContainer: " + ex.Message + " " + ex.StackTrace); } }