something along lines: builder.registertype<mytype>().as<itype>(); builder.registertype<mytype2>().as<itype>(); builder.deregistertype<mytype>().as<itype>() var container = builder.build(); var types = container.resolve<ienumerable<itype>>(); assert.istrue(types.count == 1); assert.istrue(types[0].gettype == typeof(mytype2)); scenario: go through bunch of assemblies , go register types want make sure have 1 implementation of given type. need before create container. track on own nice if autofac me bit. this cannot done directly using containerbuilder , unless start on new one. mind you, having first built container should able construct new container filtering away unwanted types , reusing registrations first container. this: ... var container = builder.build(); builder = new containerbuilder(); var components = container.componentregistry.registrations .where(cr => cr.activator.limittype != typ...
i have read mysql can handle indexes , searches better if tables keys integers rather char(36) uuid's. is worth converting int(10)? note: use 1 server , have have plans use multiple databases concurrently therefore removing 1 of big reasons using uuid. our tables innodb if makes difference. thanks in advance. usually rdbms can handle integer keys pk more efficient, other datatypes. reason how build index column, yes: long dont require string (or other typed) keys, should use integers. however: char(36) , int(10) far away being equal, because int(10) much smaller, char(36). dont know, if require many different keys, should keep in mind. update, complete last paragraph: int(10) 32-bit, char(36) 36 - ^byte^ (= 288-bit). not mean, int consumes less space, means, char(36) has 4 times more different keys.
in following program, line 5 give overflow warning expected, surprisingly line 4 doesn't give warning in gcc: http://www.ideone.com/u0bxn int main() { int = 256; char c1 = i; //line 4 char c2 = 256; //line 5 return 0; } i thinking both lines should give overflow warning. or there i'm missing? the topic led me experiment this: typedef type checking? there said following(which deleted answer, because when run it, didn't show had expected): //however, you'll warning case: typedef int t1; typedef char t2; t1 x = 256; t2 y = x; //possible overflow warning! (but doesn't give warning :() -wall doesn't include many options. -wconversion 1 of them , warns behavior you're interested in. see http://gcc.gnu.org/onlinedocs/gcc/warning-options.html
Comments
Post a Comment