Server Tools 3.0 & 3.5 on single IIS Box?

Discussion in 'microsoft.public.sqlserver.ce' started by Brian, Sep 25, 2009.

  1. Brian

    Brian Guest

    I seem to have painted myself into a corner.
    I learned today when I went to install the Sql Server 2005 Server
    Tools 3.5 on our current IIS box that it requires one to uninstall 3.0
    first.
    I need to be able to run BOTH versions on the same IIS box.

    I was planning to create two virtual directories, one for 3.1 clients
    using RDA and Replication to a Sql Server 2000 box, and the other
    virtual directory running 3.5 doing just RDA. Being forced to remove
    the 3.1 tools when installing 3.5 really sunk those plans.

    Is there any way out of this mess? I am not in a position to upgrade
    the sql 2000 box, I need replication, and my new client app is written
    entirely in .NETCF 3.5, which only works with sql ce 3.5, not 3.1.
     
    Brian, Sep 25, 2009
    #1
    1. Advertisements

  2. Brian

    Brian Guest

    I guess another solution is if it is possible to run Sql Ce 3.1 in a
    CF 3.5 app. Is this setup allowed?
     
    Brian, Sep 25, 2009
    #2
    1. Advertisements

  3. Brian

    ErikEJ Guest

    Yes, running SQL CE 3.1 with .NET F 3.5 is definetly supported. Notice that
    SQL CE 3.1 is installed and all Windows Mobile 6 and later devices.
     
    ErikEJ, Sep 25, 2009
    #3
  4. Laxmi Narsimha Rao Oruganti [MSFT], Sep 25, 2009
    #4
  5. Brian

    Brian Guest

    Thanks Laxmi,
    As I understand it, CF 3.5 Server tools will not allow merge
    replication to SQL Server 2000, even if the client is SQLCE 3.1. Am I
    wrong in that assesment?
     
    Brian, Sep 25, 2009
    #5
  6. Brian

    Brian Guest

    I'm just not sure that's true. In VS2008 with a .NET CF 3.5 app I
    changed all my System.Data.SqlServerCe.dll references from

    C:\Program Files\Microsoft SQL Server Compact Edition\v3.5\Devices
    \System.Data.SqlServerCe.dll to
    C:\Program Files\Microsoft SQL Server Compact Edition
    \v3.1\System.Data.SqlServerCe.dll

    When I try to compile with this setup I receive the following error:
    The type 'System.Data.Common.DbCommand' is defined in an assembly that
    is not referenced. You must add a reference to assembly 'System.Data,
    Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089'.

    I already have a reference to System.Data, but it is the 3.5 version.
    I tried forcing it to use the 2.0 version of this file, but VS would
    not allow me to add the reference.

    Is there some setting or reference that I am missing?

    Thanks,
    Brian
     
    Brian, Sep 25, 2009
    #6
  7. Brian

    ErikEJ Guest

    You must reference:

    C:\Program Files\Microsoft SQL Server Compact
    Edition\v3.1\SDK\bin\wce500\System.Data.SqlServerCe.dll
     
    ErikEJ, Sep 26, 2009
    #7
  8. Brian

    Brian Guest

    Thanks so much Erik - that was exactly my problem. :) I never even
    noticed the other versions of that file.
     
    Brian, Sep 27, 2009
    #8
  9. Hey Brian,

    You are right that SQL CE v3.5 Server Tools can not be used when the
    backend is SQL Server 2000. However, I am not sure why you want to use SQL
    CE v3.5 Server Tools when the backend server is SQL Server 2000.

    I request you to read thru all the deployment models and scenarios
    discussed in the given blog post as that would help both of us to make sure
    you follow proper steps.

    From this post, we have very little information to understand the
    deployment scenario.

    Is it just .NET CF v3.5 driving you for SQL CE v3.5?

    Thanks,
    Laxmi
     
    Laxmi Narsimha Rao Oruganti [MSFT], Oct 5, 2009
    #9
  10. Brian

    Brian Guest

    Laxmi,
    Thanks for the response. Your posts here and elsewhere have been
    invaluable to us on a regular basis when working with SQL CE.
    Regarcing our push to CE v3.5, yes part of it was our move to CF 3.5 -
    I was under the false impression that CF3.5 was not compatible with CE
    3.1. Erik was helpful in that regard. The other reason we wanted to
    push on it was security - it is my understanding that SQLCE 3.5
    supports AES encryption.
    We are building security apps, and that was a compelling feature in
    3.5 that is unavailable in 3.1, which only does RSA 128 bit
    encryption.
    We realize that our SQL Server 2000 back end is holding us back in
    many respects, but we are stuck with it for the short term.

    We have two different apps, one using Replication, the other doing
    only RDA. My hope was that we could lean forward and go with CE 3.5
    on the RDA app, as it seemed to work with SQL Server 2000 even though
    it is not technically supported. The app using replication is
    currently at 3.1, and we have no hope of upgrading that until our back
    end gets updated to 2005/2008.

    Since we are restricted to using only one IIS machine, I had hoped we
    could install 3.1 in one virtual directory for Replication, and 3.5 in
    another virtual directory for RDA. This setup worked fine with SQL CE
    2.0 and 3.1, but not so with 3.1 / 3.5.

    Anyways, I hope that sheds some light on my thinking. We have settled
    on 3.1 for both apps, for now. Down the road when we upgrade our SQL
    Server back end, we can revisit the apps and get them up to 3.5 to
    leverage the enhanced encryption algorithms.

    Ultimately, I'm just glad we're done with 2.0!
     
    Brian, Oct 6, 2009
    #10
  11. Inline....

    [Laxmi] yes, SQL CE supports AES encryption. Please refer to this blog post
    for more details on database security in SQL CE v3.5.
    http://blogs.msdn.com/laxmi/archive/2008/04/15/sql-server-compact-database-file-security.aspx

     
    Laxmi Narsimha Rao Oruganti [MSFT], Oct 21, 2009
    #11
  12. Inline...

    [Laxmi] Thanks for your kind words Brian.
    [Laxmi] Yes, SQL CE v3.5 supports AES under the encryption mode 'Engine
    Default'. Please refer to this blog post for more details on database
    security.
    http://blogs.msdn.com/laxmi/archive/2008/04/15/sql-server-compact-database-file-security.aspx
    [Laxmi] I am sorry, but yes you would be required to have two different IIS
    machines in this case which you seem to have figured out. We allowed v2.0
    and v3.x SxS as one does not serve other (i.e. SQL CE CA 2.0 can not talk to
    SQL CE v3.x SA). But in case of SQL CE v3.x, we made a choice to have
    compatibility and support all minor versions; hence can't be SxS. Thanks
    for your investments in Microsoft and SQL Server products.
     
    Laxmi Narsimha Rao Oruganti [MSFT], Oct 21, 2009
    #12
  13. Brian

    Brian Guest

    Since we are restricted to using only one IIS machine, I had hoped we
    I guess I see where you are coming from regarding compatibility and
    support for all minor versions, but it has made it much more difficult
    for us to upgrade our products to 3.5. Without the ability to run 3.1
    and 3.5 SxS, we must either create/deploy a new IIS machine or bring
    down the entire system until all of our clients in the field are
    upgraded. Our hands are tied as far as deploying a new server -
    that would break some security rules we have in place and trigger a
    very expensive audit, and you can imagine the logistical nightmare
    involved in upgraded the clients and server at the same time.

    It is what it is, though...this is how sql ce was built and we will
    just have to live with it, probably at 3.1 for the foreseeable future.
    Thanks for all your help, Laxmi - it is very appreciated.
     
    Brian, Oct 21, 2009
    #13
    1. Advertisements

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments (here). After that, you can post your question and our members will help you out.