Is GalaSoft.MvvmLight compatible with .NET 3.5? - mvvm-light

Is there an existing version of GalaSoft.MvvmLight that targets .NET 3.5? If no, what is the easiest way to make MvvmLight target .NET 3.5? I want to use GalaSoft.MvvmLight in a legacy .NET 3.5 project.

Yes, there are, this one for example supports WPF 3.5 https://mvvmlight.codeplex.com/releases/view/96993
This old one also does https://mvvmlight.codeplex.com/releases/view/34592

Related

Is NCache compatible with .NET Core 3.0?

I have used NCache tagetting .net framework 4.6.1 but wanted to convert the same to the .net core 3.0. So, is that possible?
I don't believe it works with Entity Framework 3.0 as Microsoft have changed a lot of things under-the-hood. I've tried upgrading our .Net Core 2.2 project, but NCache was complaining about quite a few things.

Does ASP.NET 4.5 require .NET 4.5 (or is 4.0 sufficient?)

There there is various information around, for example from Microsoft about the new features of ASP.NET 4.5.
http://www.asp.net/aspnet/overview/aspnet-and-visual-studio-2012/whats-new
However, they do not talk about .NET versions, only of ASP.NET Versions.
Is .NET 4.5 required (on the server) for ASP.NET 4.5? (or is 4.0 sufficient?)
Yes, you must install .NET 4.5 on the server if you want to run ASP.NET 4.5 applications. ASP.NET and .NET come bundled - you cannot have one without the other.
Some of features needs it.But you dont have to install if you are an end user
detailed information : http://msdn.microsoft.com/en-us/library/ms171868(v=vs.110).aspx

Can anyone recommend an IoC container for ASP.NET 2.0 Webforms?

As the title says, I'm looking for recommendations for an IoC container to use with an ASP.NET 2.0 Webforms app. I believe that some containers are .NET3.5 or newer only.
I would recommend Ninject - using the web extensions.
Although it uses 3.5 I think it will work in your 2.0 website.
You'll need 3.5 on the actual machine, but there is just one runtime version executing the app. - .NET Framework v2.0.
This blog, again using 3.5 forms, takes you through steps that should still work for you.
I've used Spring Framework.NET a lot and been very happy with it, but I haven't used it with ASP.NET. It has a release for .NET 2.0, and even has one for .NET 1.1!
I used StructureMap with 2.0.
I'm not sure if the latest version is still compatible, but the version I used back was just great.

Webhost claims ASP.NET MVC support, but runs .NET 2.0.50727.4200?

Is a server which returns 2.0.50727.4200 for System.Environment.Version going to support ASP.NET 3.5?
The webhost claims I should ignore the details in the control panel but I get 2.0.50727.4200 when checking the aforementioned system variable.
This article should make things clearer: http://www.west-wind.com/Weblog/posts/289139.aspx
In short, just because it says it's version 2.0, doesn't mean it isn't actually running 3.5. v3.0 and v3.5 are essentially updates to v2.0
The CLR for 3.5 is still 2.0, so no, you're not being screwed, it will be fine.
.NET 4.0 will have a 4.0 CLR, so when you're promised .NET 4.0, you can look for a number higher than 2.0.
The runtime for ASP.NET 3.5 is still 2.0
It will be upgraded to 4.0 when .NET 4 is released.
Don't ask my why that is, but ASP.NET MVC will work.
asp.net is version 2....
the MVC stuff in 3.+ just extends the base of v2....so that is an expected result. as the core of asp.net is still at 2.*... you will be able to run mvc

aspnet command line tools location

Microsoft provides a number of command line tools for working with asp.net applications. I haven't had any trouble using these tools. One thing that I can not understand though, is the location of these tools.
Even for applications targeting newer versions of .net, these tools are located in the .net v2 directory. On my machine, that's C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727. Why do these tools not exist in the v3.0 or v3.5 directories? And why do the ones in the older directory work on the newer framework?
This is more of an idle curiosity than required knowledge for me, but I would like to know.
Update:
Thanks for the good answers everyone. These answers raise a new question though. I hope you will forgive me for asking it here, since it is so highly related. If .net 3.5 is really just using the CLR from 2.0, why is 2.0 compatible with Windows 2000, but not 3.5? It would seem to me that if the updates in 3.0 and 3.5 run inside the framework of the earlier version, then they must maintain compatibility with the same platforms as the earlier version too. Why is this wrong?
.NET 3.0 and 3.5 are (basically) just library additions to the 2.0 framework.
The addition of .NET 3.0 didn't mean new compilers or a new CLR. Instead, it's three major new libraries: WCF (Windows Communication Foundation née Indigo), WPF (Windows Presentation Foundation née Avalon) and Windows Workflow or WF.
Basically, remember Framework version != CLR Version. If you configured an IIS Application to use .NET 2.0, you're talking about the 2.0 CLR. WCF Applications use the .NET 2.0 CLR with the new 3.0 WCF libraries.
* .NET Framework 1.x = CLR 1.x
* .NET Framework 2.0 = CLR 2.0
* .NET Framework 3.0 = CLR 2.0
* .NET Framework 3.5 = CLR 2.0 + (C# 3.0 | VB9)
Edit:
To answer your second question, .NET 3.0 and 3.5 have new libraries which reference OS-level features like WPF, which isn't available on Windows 2000. If you write an application in 3.5* but only use functionality and libraries that were also available in 2.0, it can still work on Windows 2000.
*by "in 3.5", we mean write it in Visual Studio 2008 under 3.5 but set your Project Target Framework to 2.0. Scott Hanselman talks about doing this to get ASP.NET MVC to work on .NET 2.0.
It is because the core of .Net has not actually been changed since v2.0. MS marketing types were much derided at the time for forcing the naming scheme in use, where .Net 3, and .Net 3.5 are really just adding additional libraries that run on the .Net 2 core.
Check out Scott Hanselman's blog post for more details.
Because .NET 3.0 and 3.5 are applications of .NET 2.0, not complete, standalone frameworks unto themselves. This is further see in the IIS config, where you only have the option to select .NET 1.0, .NET 1.1, and .NET 2.0. You web.config file will include any .NET 3.0 or .NET 3.5 assemblies as these are written, ultimately, with .NET 2.0 code. More details about that can be seen here: http://www.hanselman.com/blog/HowToSetAnIISApplicationOrAppPoolToUseASPNET35RatherThan20.aspx
Of course, that all changes in .NET 4.0 which will be a completely "new version" of the framework.
v3.0 and v3.5 still uses the v2 DLLs for the core files. Most of the changes are additions to the v2 framework as well as a new compiler for 3.5.

Resources