Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • World
  • Users
  • Groups
Skins
  • Light
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Default (No Skin)
  • No Skin
Collapse
Code Project
  1. Home
  2. General Programming
  3. C#
  4. Directory structure for solution

Directory structure for solution

Scheduled Pinned Locked Moved C#
csharpdotnethelptutorial
6 Posts 3 Posters 0 Views 1 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • S Offline
    S Offline
    Syed Muhammad Kamran
    wrote on last edited by
    #1

    I have a solution in C# which has 6 projects Say A, B, C, X, Y, Z Where A, B, C generates exe's and X, Y, Z is of type Class library (DLL) 1) Executables A and B both hold a reference to Projects X, Y, Z (dll). 2) Where Executable C holds a reference to Dll X only. X,Y,Z are private assemblies and not candidates for GAC. Now since they are private assemblies when I add a reference it'll be copied to the project output directory locally. And if I'll set the property "Copy Local = false" then it'll not get copied and the exe's fails when. What I wanna impose is a directory structure for my solution to avoid multiple copies of dll's when deploying. LetSay it'll copy all the files in... \AppRoot ......... A.exe ......... B.exe ......... C.exe \AppRoot\Lib .............. X.dll .............. Y.dll .............. Z.dll And have them work correctly. I'm new to Dotnet and perhaps to programming.. Please help how to impose this kind of directory structure for my app. Thanks. SMK

    N 1 Reply Last reply
    0
    • S Syed Muhammad Kamran

      I have a solution in C# which has 6 projects Say A, B, C, X, Y, Z Where A, B, C generates exe's and X, Y, Z is of type Class library (DLL) 1) Executables A and B both hold a reference to Projects X, Y, Z (dll). 2) Where Executable C holds a reference to Dll X only. X,Y,Z are private assemblies and not candidates for GAC. Now since they are private assemblies when I add a reference it'll be copied to the project output directory locally. And if I'll set the property "Copy Local = false" then it'll not get copied and the exe's fails when. What I wanna impose is a directory structure for my solution to avoid multiple copies of dll's when deploying. LetSay it'll copy all the files in... \AppRoot ......... A.exe ......... B.exe ......... C.exe \AppRoot\Lib .............. X.dll .............. Y.dll .............. Z.dll And have them work correctly. I'm new to Dotnet and perhaps to programming.. Please help how to impose this kind of directory structure for my app. Thanks. SMK

      N Offline
      N Offline
      Not Active
      wrote on last edited by
      #2

      Create a common folder for the output from the class library projects and change the project settings for these. Then have your exe project reference the assemblies from this location. AppRoot Common Lib x y z


      only two letters away from being an asset

      P S 2 Replies Last reply
      0
      • N Not Active

        Create a common folder for the output from the class library projects and change the project settings for these. Then have your exe project reference the assemblies from this location. AppRoot Common Lib x y z


        only two letters away from being an asset

        P Offline
        P Offline
        PIEBALDconsult
        wrote on last edited by
        #3

        The deployed structure need not echo the development structure. Add a deployment project.

        N 1 Reply Last reply
        0
        • P PIEBALDconsult

          The deployed structure need not echo the development structure. Add a deployment project.

          N Offline
          N Offline
          Not Active
          wrote on last edited by
          #4

          True, however creating a common folder for this senerio will ease creating a deployment package


          only two letters away from being an asset

          1 Reply Last reply
          0
          • N Not Active

            Create a common folder for the output from the class library projects and change the project settings for these. Then have your exe project reference the assemblies from this location. AppRoot Common Lib x y z


            only two letters away from being an asset

            S Offline
            S Offline
            Syed Muhammad Kamran
            wrote on last edited by
            #5

            Create a common folder.... Where... do you mean solution folder or a folder in each project? Change the project settings for these... How... you mean using Project Properties>> Built>>> Output Path?? Do I have to use an absolute or relative path to Common?? Please need a little more clarification on this. SMK

            N 1 Reply Last reply
            0
            • S Syed Muhammad Kamran

              Create a common folder.... Where... do you mean solution folder or a folder in each project? Change the project settings for these... How... you mean using Project Properties>> Built>>> Output Path?? Do I have to use an absolute or relative path to Common?? Please need a little more clarification on this. SMK

              N Offline
              N Offline
              Not Active
              wrote on last edited by
              #6

              Common to the solution. The reference can be either relative or absolute, although I believe VS converts it to relative if it can.


              only two letters away from being an asset

              1 Reply Last reply
              0
              Reply
              • Reply as topic
              Log in to reply
              • Oldest to Newest
              • Newest to Oldest
              • Most Votes


              • Login

              • Don't have an account? Register

              • Login or register to search.
              • First post
                Last post
              0
              • Categories
              • Recent
              • Tags
              • Popular
              • World
              • Users
              • Groups