Spring.NET 2.0 GA
New Feature Highlights
- Spring CodeConfig integrated to core
- .NET 3.5 and later supported
- Generic types taken into use
- ASP.NET MVC 5 / WebAPI 2.2 support
- NHibernate 4 Support
API and Behavioural Changes
- Protected fields were changed to private. Access is now allowed via public/protected property member.
- Most of members marked as Obsolete before 2.0 release were removed.
- DbProvider automatically sets BindByName to true for Oracle's ODP.NET OracleCommand instances when created
Project Structure and Packaging changes
- Spring.Data.NHibernate.3x projects were merged to single Spring.Data.NHibernate3 project
- You need to uninstall old NuGet packages and install the new Spring.DataNHibernate3 package
- Spring.Scheduling.Quartz has been replaced with Spring.Scheduling.Quartz2
Detailed Issues
Bug
[SPRNET-21] - Event Wiring Prototype Source to Singleton Sink Does Nothing [SPRNET-1386] - WebServiceExporter results in case-sensitive .asmx URLs [SPRNET-1409] - Bug in MethodParametersCriteria.IsSatisfied() Method [SPRNET-1427] - Prevent ObjectFactory from doing work when in the process of being disposed to prevent object resolution when container is in an inconsistent state [SPRNET-1433] - AopUtils.IsAopProxy and IsAopProxyType fails to consider InheritanceAopProxy instances and types [SPRNET-1458] - Nuget package Spring.Testing.NUnit can not find nunit.framework [SPRNET-1461] - Transaction Timeout value not adhered while using TransactionAttribute [SPRNET-1464] - WCF Service Exporter does not support contract interfaces that inherit from other interfaces [SPRNET-1468] - Variables not working in BaseBindingContainer [SPRNET-1470] - Setting property of type IList using without the @element-type specified fails. [SPRNET-1473] - A call to SpringMvcDependencyResolver GetServices fails with a cast exception (DictionaryEntry -> Implementation) [SPRNET-1474] - SimpleDelegatingSessionFactory.cs Connection Leak [SPRNET-1481] - SpringControllerFactory does not properly delegate to underlying base class if Controller not registered with the ApplicationContext (MVC2) [SPRNET-1482] - SpringControllerFactory returns null instance by default [SPRNET-1485] - CachedSession CreateProducer destination null [SPRNET-1490] - NumberUtils.IsZero: invalid cast for Byte and SByte [SPRNET-1499] - WebService Exported produces "Duplicate type name within an assembly" exception [SPRNET-1505] - Support using Proxyied Objects as Factory Objects [SPRNET-1462] - Spring DB Provider initialization issue with Oracle 11 g 64 bit - Errors attached. [SPRNET-1518] - IDestructionAwareObjectPostProcessor defined PostProcessors do not receive PostProcessBeforeDestruction method calls [SPRNET-1519] - [Controller] attribute stereotype does not exists [SPRNET-1520] - Autowired into Spring.Collections.Generic.ISet does not work, Exceptions shows that abstract class Set can't be intantiated [SPRNET-1524] - IndexOutOfRangeException when matching ambiguous method using params parameters [SPRNET-1527] - GetObject(string nameValue) does not resolve objects correctly [SPRNET-1529] - ExpressionEvaluation cannot process Byte values [SPRNET-1516] - Spring.Reflection.Dynamic.SafeMethod ctor not thread safe [SPRNET-1535] - XmlMessageConverter always appends UTF8 preamble (BOM) [SPRNET-1543] - DefaultListableObjectFactory.GetObjectDefinitionNames is getting them from all ancestors, but VariablePlaceholderConfigurer is trying to get the ObjectDefinition just from the current context and not the parent, potential NPE exception. [SPRNET-1544] - CodeConfig ComponentScan does not setup ObjectScope.Session and ObjectScope.Request not automatically with LazyInit [SPRNET-1545] - Web scoped objects with IDisposable failing when object created twice [SPRNET-1547] - ScannedGenericObjectDefinition doesn't apply default autowire mode [SPRNET-1549] - 2.0.0 M2 Release with MVC4 fails on second request for controller object with duplicate key error [SPRNET-1558] - Spring.Aop.Framework.HashtableCachingAdvisorChainFactory not thread safe [SPRNET-1563] - Make code as ClsCompliant as possible [SPRNET-1566] - Spring.Data.Support.FallbackExceptionTranslator.Translate() should return an exception, not throw one [SPRNET-1567] - HibernateTransactionManager assign incorrect connection timeout [SPRNET-1318] - Dramatically inefficent ObjectFactory disposing [SPRNET-1513] - HibernateTransactionManager DoBegin fails with Oracle 8i [SPRNET-1435] - Unhandled exception from TypeConversionUtils.cs at line 147. [SPRNET-1494] - Class Spring.Aop.Framework.DynamicProxy.CachedAopProxyFactory logs message on INFO level [SPRNET-1445] - Can not autowire IDictionary [SPRNET-1498] - Prevent SimpleDelegatingSessionFactory second level cache key conflict