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. The Lounge
  3. What C# tools do you recommend?

What C# tools do you recommend?

Scheduled Pinned Locked Moved The Lounge
csharptoolshelpquestion
53 Posts 35 Posters 29 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 Slow Eddie

    I am trying to convert my VB6 code to C# (Desktop programs). I am looking for tools that will help increase my efficiency and shorten the learning curve. Any suggestions? Other than "give it up!" :laugh:

    If everything seems to be going well you are obviously overlooking someone or something....

    D Offline
    D Offline
    Dan Neely
    wrote on last edited by
    #17

    What might be useful, if it exists, is a tool that would let you embed C# in VB6 or vice versa allowing you to incrementally rebuild the app one module at a time. THis's dependent on the legacy apps structure not being too horrible; but at 400k lines and worked well enough to be kept alive this long I'm assuming that it did have more software engineering that the average craplication that earned VB6 so much hate over the years.

    Did you ever see history portrayed as an old man with a wise brow and pulseless heart, weighing all things in the balance of reason? Is not rather the genius of history like an eternal, imploring maiden, full of fire, with a burning heart and flaming soul, humanly warm and humanly beautiful? --Zachris Topelius Training a telescope on one’s own belly button will only reveal lint. You like that? You go right on staring at it. I prefer looking at galaxies. -- Sarah Hoyt

    S 1 Reply Last reply
    0
    • N Nathan Minier

      Resharper. And don't give it up, C# isn't terribly difficult. Like an English muffin, it just has many nooks and crannies, and is infinitely better with butter(Resharper). I would suggest a functional clone rather than direct conversion, though. It's unlikely that a VB6 program is structured in a way that will work well in C#.

      "There are three kinds of lies: lies, damned lies and statistics." - Benjamin Disraeli

      S Offline
      S Offline
      Slacker007
      wrote on last edited by
      #18

      Nathan Minier wrote:

      Resharper.

      :thumbsup::thumbsup:

      1 Reply Last reply
      0
      • D Dan Neely

        What might be useful, if it exists, is a tool that would let you embed C# in VB6 or vice versa allowing you to incrementally rebuild the app one module at a time. THis's dependent on the legacy apps structure not being too horrible; but at 400k lines and worked well enough to be kept alive this long I'm assuming that it did have more software engineering that the average craplication that earned VB6 so much hate over the years.

        Did you ever see history portrayed as an old man with a wise brow and pulseless heart, weighing all things in the balance of reason? Is not rather the genius of history like an eternal, imploring maiden, full of fire, with a burning heart and flaming soul, humanly warm and humanly beautiful? --Zachris Topelius Training a telescope on one’s own belly button will only reveal lint. You like that? You go right on staring at it. I prefer looking at galaxies. -- Sarah Hoyt

        S Offline
        S Offline
        Slow Eddie
        wrote on last edited by
        #19

        I have been a firm believer in Rokford Lhotka's Business Objects....

        T 1 Reply Last reply
        0
        • S Slow Eddie

          I am trying to convert my VB6 code to C# (Desktop programs). I am looking for tools that will help increase my efficiency and shorten the learning curve. Any suggestions? Other than "give it up!" :laugh:

          If everything seems to be going well you are obviously overlooking someone or something....

          F Offline
          F Offline
          F ES Sitecore
          wrote on last edited by
          #20

          If all you're doing is converting it then what do you hope to gain? If you're not prepared to rewrite it just leave it as it is.

          S 1 Reply Last reply
          0
          • N Nish Nishant

            Unless it's less than 1000 lines of code, avoid auto-conversion software. I'd strongly recommend re-designing and then re-writing it in C#. The re-design is important because things are done way differently in modern .NET than it was during the VB6 days.

            Nish Nishant Consultant Software Architect Ganymede Software Solutions LLC www.ganymedesoftwaresolutions.com

            J Offline
            J Offline
            Jeremy Falcon
            wrote on last edited by
            #21

            Exactly. Your post is the voice of experience talking.

            Jeremy Falcon

            1 Reply Last reply
            0
            • S Slow Eddie

              I am trying to convert my VB6 code to C# (Desktop programs). I am looking for tools that will help increase my efficiency and shorten the learning curve. Any suggestions? Other than "give it up!" :laugh:

              If everything seems to be going well you are obviously overlooking someone or something....

              K Offline
              K Offline
              kmoorevs
              wrote on last edited by
              #22

              You clearly are looking to move to C#, but if you really want to shorten the learning curve, consider converting/rewriting to VB.NET. Once you get it to that point, there are tools that can convert to C#. Why VB.NET first? The learning curve is much shorter and at least some VB6 code will work without too much fuss. (beware of the whole int/short/long issues) If you want a direct conversion to VB.NET from VB6, I VB 2008 was the last IDE that had a migration tool.

              "Go forth into the source" - Neal Morse

              T 1 Reply Last reply
              0
              • S Slow Eddie

                I am trying to convert my VB6 code to C# (Desktop programs). I am looking for tools that will help increase my efficiency and shorten the learning curve. Any suggestions? Other than "give it up!" :laugh:

                If everything seems to be going well you are obviously overlooking someone or something....

                J Offline
                J Offline
                Jeremy Falcon
                wrote on last edited by
                #23

                Just want to second what Nish said. Also, to plug to our old friend Tom Archer who works at Microsoft, it may be worth getting his book [^]. It's a bit dated now, but in this case that's good. It's a book that's specific about coming from a Visual Studio 6.0 world (from more of a C++ standpoint but still) to help with the fundamentals of C#. After the fundamentals, you can always read up on what's happened with the language lately... which has been a lot.

                Jeremy Falcon

                1 Reply Last reply
                0
                • F F ES Sitecore

                  If all you're doing is converting it then what do you hope to gain? If you're not prepared to rewrite it just leave it as it is.

                  S Offline
                  S Offline
                  Slow Eddie
                  wrote on last edited by
                  #24

                  By "Converting" I meant re-writing while keeping all of the same functionality.

                  1 Reply Last reply
                  0
                  • S Slow Eddie

                    I am trying to convert my VB6 code to C# (Desktop programs). I am looking for tools that will help increase my efficiency and shorten the learning curve. Any suggestions? Other than "give it up!" :laugh:

                    If everything seems to be going well you are obviously overlooking someone or something....

                    P Offline
                    P Offline
                    Pete OHanlon
                    wrote on last edited by
                    #25

                    Given that Resharper has already been mentioned, what other tools would be useful? Well, you might want to look into NDepend[^]. I use this tool a lot to check code quality; it's really useful for showing you dependencies and telling you the cost of those dependencies for instance. Then there's unit testing (whether or not you are a fan of TDD, having well written unit tests is a real bonus). You can go with something like NUnit, the Visual Studio unit tests, xUnit or so on. Speaking of unit testing, as your code grows you might want to invest in NCrunch[^]. It's a great way to see if your code changes have broken any tests without you having to remember to run the tests yourself. There are many other tools you can add as you grow, but I'd give these a look if I were you.

                    This space for rent

                    1 Reply Last reply
                    0
                    • S Slow Eddie

                      I am trying to convert my VB6 code to C# (Desktop programs). I am looking for tools that will help increase my efficiency and shorten the learning curve. Any suggestions? Other than "give it up!" :laugh:

                      If everything seems to be going well you are obviously overlooking someone or something....

                      N Offline
                      N Offline
                      Nagy Vilmos
                      wrote on last edited by
                      #26

                      Is there an underlying reason to re-write beyond the fact that the code is out of date? You may find, along with Nish's brilliant advice, that you could speed things up by wrapping the old functional parts into an API that can be called by the 'new' version. That way you don't need to rewrite everything from day 1 to get moving. Wrap the API that can be called by the new solution and then you can replace the functionality piece meal rather than all at once.

                      veni bibi saltavi

                      1 Reply Last reply
                      0
                      • N Nish Nishant

                        Unless it's less than 1000 lines of code, avoid auto-conversion software. I'd strongly recommend re-designing and then re-writing it in C#. The re-design is important because things are done way differently in modern .NET than it was during the VB6 days.

                        Nish Nishant Consultant Software Architect Ganymede Software Solutions LLC www.ganymedesoftwaresolutions.com

                        P Offline
                        P Offline
                        Pualee
                        wrote on last edited by
                        #27

                        Nish Nishant wrote:

                        things are done way differently in modern .NET than it was during the VB6 days

                        :-D :laugh: ;P ;) That is highly dependent upon who you work with ;P ;) :laugh: :-D

                        T K 2 Replies Last reply
                        0
                        • S Slow Eddie

                          I am trying to convert my VB6 code to C# (Desktop programs). I am looking for tools that will help increase my efficiency and shorten the learning curve. Any suggestions? Other than "give it up!" :laugh:

                          If everything seems to be going well you are obviously overlooking someone or something....

                          M Offline
                          M Offline
                          Marc Clifton
                          wrote on last edited by
                          #28

                          As Balboos said, delete and rewrite. Anything in VB6 is going to look like an aborted fetus in C#. Not that it doesn't look like that already in VB6. ;)

                          Latest Article - Class-less Coding - Minimalist C# and Why F# and Function Programming Has Some Advantages Learning to code with python is like learning to swim with those little arm floaties. It gives you undeserved confidence and will eventually drown you. - DangerBunny Artificial intelligence is the only remedy for natural stupidity. - CDP1802

                          1 Reply Last reply
                          0
                          • S Slow Eddie

                            I am trying to convert my VB6 code to C# (Desktop programs). I am looking for tools that will help increase my efficiency and shorten the learning curve. Any suggestions? Other than "give it up!" :laugh:

                            If everything seems to be going well you are obviously overlooking someone or something....

                            L Offline
                            L Offline
                            Lost User
                            wrote on last edited by
                            #29

                            You mean "rewrite". Converting VB6 code to C# would mean using old COM-interfaces, where there's easier managed solutions available.

                            Bastard Programmer from Hell :suss: If you can't read my code, try converting it here[^]

                            1 Reply Last reply
                            0
                            • S Slow Eddie

                              Thanks, I will check it out. And yes I am actually re-writing a functional clone as you suggest. Sorry I did not make that clearer. The Program is around 400,000 lines of code. :omg:

                              T Offline
                              T Offline
                              TonyManso
                              wrote on last edited by
                              #30

                              Ed Aymami wrote:

                              around 400,000 lines of code

                              Imagine how rewarding it will be when you can finally "select-all, delete!" the VB code :laugh:

                              On the other hand, you have different fingers. - Steven Wright

                              1 Reply Last reply
                              0
                              • P Pualee

                                Nish Nishant wrote:

                                things are done way differently in modern .NET than it was during the VB6 days

                                :-D :laugh: ;P ;) That is highly dependent upon who you work with ;P ;) :laugh: :-D

                                T Offline
                                T Offline
                                TonyManso
                                wrote on last edited by
                                #31

                                Clearly, they never worked for a government agency. ;P

                                On the other hand, you have different fingers. - Steven Wright

                                1 Reply Last reply
                                0
                                • S Slow Eddie

                                  I am trying to convert my VB6 code to C# (Desktop programs). I am looking for tools that will help increase my efficiency and shorten the learning curve. Any suggestions? Other than "give it up!" :laugh:

                                  If everything seems to be going well you are obviously overlooking someone or something....

                                  R Offline
                                  R Offline
                                  RedDk
                                  wrote on last edited by
                                  #32

                                  You need one of these: http://com-sub.info/Mad/Welcome And a few tabs of Anacin.

                                  T 1 Reply Last reply
                                  0
                                  • S Slow Eddie

                                    I am trying to convert my VB6 code to C# (Desktop programs). I am looking for tools that will help increase my efficiency and shorten the learning curve. Any suggestions? Other than "give it up!" :laugh:

                                    If everything seems to be going well you are obviously overlooking someone or something....

                                    M Offline
                                    M Offline
                                    Marc Greiner at home
                                    wrote on last edited by
                                    #33

                                    You should look for a low code solution. I highly recommend DevExpress XAF. What is the budget for the project? C# with DevExpress XAF. With one low code solution in C#, you produce : - WinForms - Web (touch enabled) - multi-platform Mobile app with native look and feel. Your source code is mainly the description of your objects and their relations, where you add declarative validation and other goodies via attributes. Your application creates (or updates) the database automatically (including indexes, foreign keys, necessary n-n relation tables, etc.) and produces a beautiful default UI that you can fully customize, either in Visual Studio or at run-time. The learning curve is sharp, but well worth it. Everything is done by following best design patterns. See my answer to another similar question here, that includes links to tutorials and demos: Generic Multi Purpose .NET Layered Framework[^]

                                    T 1 Reply Last reply
                                    0
                                    • P Pualee

                                      Nish Nishant wrote:

                                      things are done way differently in modern .NET than it was during the VB6 days

                                      :-D :laugh: ;P ;) That is highly dependent upon who you work with ;P ;) :laugh: :-D

                                      K Offline
                                      K Offline
                                      kalberts
                                      wrote on last edited by
                                      #34

                                      In the 1970s, when structured languages such as Pascal were becoming widespread, the saying was that "You can do FORTRAN programming in any language!"

                                      1 Reply Last reply
                                      0
                                      • S Slow Eddie

                                        I am trying to convert my VB6 code to C# (Desktop programs). I am looking for tools that will help increase my efficiency and shorten the learning curve. Any suggestions? Other than "give it up!" :laugh:

                                        If everything seems to be going well you are obviously overlooking someone or something....

                                        M Offline
                                        M Offline
                                        m0sa
                                        wrote on last edited by
                                        #35

                                        LinqPAD - http://www.linqpad.net is totally worth it. It's very nice to play around with small snippets and run them immediately / compare them to other languages.

                                        T 1 Reply Last reply
                                        0
                                        • S Slow Eddie

                                          I am trying to convert my VB6 code to C# (Desktop programs). I am looking for tools that will help increase my efficiency and shorten the learning curve. Any suggestions? Other than "give it up!" :laugh:

                                          If everything seems to be going well you are obviously overlooking someone or something....

                                          R Offline
                                          R Offline
                                          Robert Chafer
                                          wrote on last edited by
                                          #36

                                          I have done this - taken a large VB project (which I wrote) and converted it to a shipping product written in C#. A few things I learned 1. Don't convert the VB, write a new application. Take the lessons leaner from VB app and apply them using C# and .NET. Use it as an opportunity to improve the code and algorithms used, even if it is supposed to be functionally similar or the same. 2. Write something else in C# first. C# and VB6 are more similar than you would think but the differences are key. Write something using VS2017. Make your mistakes there. It doesn't have to be something big, just something to get you up-to-speed with it. 3. Whatever you think it will take, it will take longer. 4. Whatever you think it will take, it will take longer. 5. Consider the external parts of your VB project: OCXs References etc. If you don't have control of them it could make life tricky in C# land. 6. You asked about tools: VS2017 is the best tool you can use. Concentrate on that first!

                                          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