What's the state of Spring.Net?

2019-04-07 13:55发布

I'm currently evaluating the technologies we want to use for our next project. It will mainly be a backend for automatic data manipulation. It has some dependencies and we can only build it on top of .Net 3.5 at the moment.

Spring.net seems like a good match for our requirements, since it brings a DI container, ADO.Net helpers, NHibernate, Unit testing helpers and other goodies in one maintained package. How established is Spring.Net in the community and what's the state? It seems like being actively maintained, but who uses it and can share some experience? I'm esp. interested in the DI container it has and the ADO.Net module. Does the DI container support proper auto wiring?

2条回答
Rolldiameter
2楼-- · 2019-04-07 14:32

I've used Spring.NET for several years. First starting with just the DI stuff, gradually learning more about the techniques and applying more and more functionality from the framework. AoP, services, ado.net templates. If you know where to find the items you need it really is a time-saver, it takes quite some time though to get acquainted with it. Although there is a lot of documentation, you'll find yourself trying out a lot of things.

I got some posts on my blog on Spring.NET: http://blog.bennymichielsen.be/category/springnet/

查看更多
Anthone
3楼-- · 2019-04-07 14:47

I've been actively using spring.net for over a year now and like it a lot.

What I like:

  • it is non-obtrusive; gives you all the freedom you need
  • well documented
  • it guides me to building understandable, testable and maintainable software, by moving out almost all infrastructural code from my presentation and domain objects; I find that I can easily and reliably make changes to my code

I think it could use improvement:

  • learning curve at the start can be steep
  • the xml di congfiguration isn't really friendly to starters; I don't think it's as bad as many suggest though, especially when using Resharper and installing the xsd schema's in Visual Studio
查看更多
登录 后发表回答