views:

35

answers:

2

I'm trying to load an assembly that was installed as part of .Net 3.5 SP1 using Assembly.Load() by referencing its strong name. This works fine on my computer right now, but is it future proof?

Will the strong name of core .Net assemblies change when patches are installed or new versions of the .Net framework are released?

Edit: If .Net 5.0 includes a massive rewrite of System.Data, will the strong name I am using now break my app on that platform?

+1  A: 

The strong name will not change, unless it's recompiled.

John Weldon
No, this is not true, recompiling does not change the name unless you change the assembly version, assembly name or key.
0xA3
@0xA3, yes - I meant if recompiled and something changes, like the framework version.
John Weldon
+1  A: 

Patches like service packs will not change the strong name of the assembly. That would be a too big of a breaking change to include in a service pack.

Strong names will change between major versions of the framework since the version number is included in the strong name.

JaredPar
But only after a re-compile.
John Weldon