StrataFrame Forum

Updateing web project from 1.5 to 1.6

http://forum.strataframe.net/Topic8201.aspx

By Keith Chisarik - 4/17/2007

I have a 1.5 web app that needs updates so (sigh) I have to update it to 1.6 and need some direction please.



I will start with web.config. What needs to be updated in the following? just the version or the tokens as well? if so.... to what?



anything else you can think of that might be helpful would be great.



Also, please consider making future versions backward compatible. I love SF but having to update a project just to do a minor cosmetic change doesn't seem right.



Thanks,



Keith









By Keith Chisarik - 4/17/2007

Yes, I cant spell today.



Another question. So I am going to have to update my web server as well once I get my changes done and the proiject is in 1.6, what if I have multiple applications already running on the same target server (and complete) that are done with 1.5..... are they going to run when I install the 1.6 DLL's to the GAC on my server?



Do I install both versions to the GAC?



I admit I am a bit confused on how this is supposed to work.


By Keith Chisarik - 4/18/2007

hello? Ermm
By Keith Chisarik - 4/19/2007

/bump



sorry to bug but I have a customer wanting updates done.
By Keith Chisarik - 4/19/2007

it would probably help if I posted the web.config snippet.... sorry













By Keith Chisarik - 4/19/2007

it wont post with the tags



add assembly="MicroFour StrataFrame Base, Version=1.5.0.0, Culture=neutral, PublicKeyToken=99fe9917f71608a7"/

add assembly="MicroFour StrataFrame Business, Version=1.5.0.0, Culture=neutral, PublicKeyToken=99fe9917f71608a7"

add assembly="MicroFour StrataFrame UI, Version=1.5.0.0, Culture=neutral, PublicKeyToken=99fe9917f71608a7"



add tagPrefix="SFWeb" namespace="MicroFour.StrataFrame.UI.Web" assembly="MicroFour StrataFrame UI, Version=1.5.0.0, Culture=neutral, PublicKeyToken=99fe9917f71608a7"/





etc etc
By StrataFrame Team - 4/19/2007

We are having to be more careful and strip a bit more because of the issues we ran into a while back when the forum was up and down for a week or two.  Someone posted something that killed the RegEx and certain forums on the site.

Do you still have he 1.5 assemblies because you can run the 1.5 and 1.6 side-by-side in the GAC.

By Keith Chisarik - 4/19/2007

No I removed them because Trent told me the licensing was changed so that was not a viable option, certain designers would not work with the 1.5 assemblies.


By Trent L. Taylor - 4/19/2007

Yeah, the licensing did change.  But one thing that you might try is add the new license file to the GAC as well.  This way the 1.5 and 1.6 may work in tandem.  I have not tried this, but it is worth a shot.
By Keith Chisarik - 4/20/2007

The point of my original post was really not to run 1.5 and 1.6, I gave up on that.



My needs:



Part 1 (development):

I have a web project in 1.5, it does need updating and will more so in the future. How do I update a 1.5 web project to 1.6 please?



There are no references to add/remove from the VS project since they are loaded in web.config via the lines pasted above.



I can change the version number easy enough, but dont know what to do about the "public key token" referenced.



Part 2 (production):

Can a web 1.5 web project (of which I have a few now), run side by side with a 1.6 web project on the same server so long as the DLL's for each version are installed to the GAC on the production web server?



Thank you.


By StrataFrame Team - 4/20/2007

The version number in for the SF references within the web.config is all you will have to change to switch to version 1.6.  The PublicKeyToken stayed the same and won't be changing. 

FYI:  The PublicKeyToken is a hash that is computed for the assembly when it is signed (strong-named) to allow it to be put into the GAC.  The value of the token is determined by the .snk or pfx (public/private key pair) you use to sign the assembly.  So, if you use the same .snk to sign multiple assemblies, they will all have the same PublicKeyToken.  We aren't going to change the .snk file that we use for SF, so it will stay the same from version to version.  If you ever need to know the PKT of a file: in Vista you can view it's properties in Windows Explorer and the Version tab will tell you the value and in other OS's you can drop it in the GAC and then view it's properties.

There might also be some other places in the web.config and pages where the SFWeb prefix is registered (usually at the bottom of the web.config) that will also need to be changed from 1.5 to 1.6.

#2  Yes, 1.5 can run along 1.6 on the same server.  In fact, different versions of 1.6 can run along side each other on the same server.  If the version # of the DLLs are different, then you can put them in the GAC, but if it's a development server and the DLL changes often without a version number change, it's easier to just put the DLLs into the bin\ folder.  That's what we do most of the time (we don't use the GAC much any more on web servers). 

Also, as a tip, in development, you might want to make your different websites use different app pools in IIS.  The app pool contains the AppDomain in .NET which contains the loaded assemblies.  So, if 2 websites have different versions of the same DLL (with the same version number) only one of them will get loaded into the app pool.

By Keith Chisarik - 4/20/2007

Excellent!



I was already putting my web apps in different application pools, so I should be good. Thank you very much.