Version 9 .NET Framework Version for Server Scripting

Options

Just came across this issue in my own projects, and I found this:

 

/awd/forums/questions/3405405#r3405406

 

I find it very hard to understand why the new state-of-the-art version 9 BPM product would be based on a version of .NET that is over 7 years old.  Is there any work-around?  I would like to reference some custom assemblies that I've build on .NET 4.0.

Tagged:

Comments

  • I believe 9.2 installs 4.0 and some of the app pools run in 4.0.  I always thought Designer can only see assemblies compiled in 3.5 and prior...

     

    But I have not heard that it is compiling the SS in 2.0.  Though, I know the app pool for the Web Application does run under 2.0 so this makes some sense...

  • Yes, .NET is forward compatible from 2.0 to 3.5. There was change of metadata format in 4.0 version, this is the reason why you need CLR 4.0 to execute 4.0 targeted assemblies.

  • So is there any way to do what I'm asking? To get BPM to target 4.0 so I can reference my 4.0 assemblies?

  • I'm not sure if this has changed in 9.3 but this is my understanding for 9.2.x:

     

    Process Engine and Web Extensions target .NET 4

    Deployment Service targets .NET 3.5

    Designer targets .NET 2 for validation routines and .NET 3.5 for everything else. The use of .NET 2 is why you can get errors on validation of a project/library that deploys ok (e.g. "; expected")

     

    To answer the original question... the only way for you to utilise .NET 4 is to create two custom assemblies, a stub that targets .NET 3.5 which you will need to use in the Designer and Deployment CustomLib folders and your real assembly that targets .NET 4 which will need to be put in the engine's dotnetbin.

     

    Obviously this is a pain so it is going to depend on how badly you want to use .NET 4 :)

     

    Iain

  • Thanks lain. Sigh... :(