There are enough answers out here. Just adding some quick points.
When you're working with large projects which has been evolved over years will always have this problem in adopting new technologies. The reason why, it simply works.
One of my friends worked with a client who wanted to port an image processing algorithm which whttp://programmers.stackexchange.com/questions/74351/how-can-i-convince-my-company-to-move-to-mvcas written in Unix/C to Windows/C# .NET. The porting was quite easy and he adopted the best use of the modern language. The optimization life was terrible where you don't have much controls over the ready-made framework classes implemented for a general purpose implementation.
I have seen people adopted ASP.NET just in terms to improve productivity and great support from developers across web. But if you see the large implementations, arguably people tend to adopt open source technologies than Microsoft technology.
If it's a kind of new project I'd say you must carefully choose the technology.
Working with legacy products, I have realized that there are certain limitations in upgrading to the latest technology. There are still code being run with Visual C++ 6.0 though Microsoft stopped the support. There are people who still have deployed the software in Windows 2000, just for the reason that the cost for an upgrade will be too much. I know vendors paying millions still to Microsoft to get the critical updates and patches.
The best example would be a hospital system which has the data of the patient for years. Irrelevant to the technical advancement, there are certain things come in play like data reliability, time, security etc. It might take years to migrate old data to new platform and the cost of doing something new with a large user should always be careful.
You're problem may not be relevant with the situations I have explained above but I was showing a different perspective of embracing new techonologies.