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. Contrary to popular opinion I really like MEF

Contrary to popular opinion I really like MEF

Scheduled Pinned Locked Moved The Lounge
csharpdatabasequestionannouncement
18 Posts 8 Posters 1 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.
  • R Rohde

    I have just started playing with making a version 2 of a web app I have done for some companies. Earlier versions used a hand-coded ADO.NET layer. Since there will be a lot of changes in the new version I am playing a bit with MEF (Microsoft Entity Framework) in order to decide whether to use it or not. Although it has got a lot of flack in the "press", I must say I really really like it. Granted it is not perfect, but I already fell more productive. The best is not having to write SQL in strings, but having compile time checking of Ling (to Entities). That is awesome. Anyway, just thought I give it a positive review since it's been dissed a lot.


    "When you have made evil the means of survival, do not expect men to remain good. Do not expect them to stay moral and lose their lives for the purpose of becoming the fodder of the immoral. Do not expect them to produce, when production is punished and looting rewarded. Do not ask, `Who is destroying the world?' You are."
    -Atlas Shrugged, Ayn Rand

    E Offline
    E Offline
    Ennis Ray Lynch Jr
    wrote on last edited by
    #8

    By the time you are almost finished and spend 90% of your time on the 10% Microsoft will have dropped support and moved to something else. Personally, I have never minded writing SQL. You can do some pretty good stuff with it, fast.

    Need custom software developed? I do C# development and consulting all over the United States.
    If you don't ask questions the answers won't stand in your way.
    Doing a job is like selecting a mule, you can't choose just the front half xor the back half so when you ask me to do a job don't expect me to do it half-assed.

    L R 2 Replies Last reply
    0
    • E Ennis Ray Lynch Jr

      By the time you are almost finished and spend 90% of your time on the 10% Microsoft will have dropped support and moved to something else. Personally, I have never minded writing SQL. You can do some pretty good stuff with it, fast.

      Need custom software developed? I do C# development and consulting all over the United States.
      If you don't ask questions the answers won't stand in your way.
      Doing a job is like selecting a mule, you can't choose just the front half xor the back half so when you ask me to do a job don't expect me to do it half-assed.

      L Offline
      L Offline
      leppie
      wrote on last edited by
      #9

      Ennis Ray Lynch, Jr. wrote:

      Personally, I have never minded writing SQL. You can do some pretty good stuff with it, fast.

      How fast when the 'DBA' changes the DB schema on a daily basis? Linq2SQL is a godsend for this...

      xacc.ide - now with TabsToSpaces support
      IronScheme - 1.0 beta 2 - out now!
      ((lambda (x) `((lambda (x) ,x) ',x)) '`((lambda (x) ,x) ',x))

      E 1 Reply Last reply
      0
      • L leppie

        Ennis Ray Lynch, Jr. wrote:

        Personally, I have never minded writing SQL. You can do some pretty good stuff with it, fast.

        How fast when the 'DBA' changes the DB schema on a daily basis? Linq2SQL is a godsend for this...

        xacc.ide - now with TabsToSpaces support
        IronScheme - 1.0 beta 2 - out now!
        ((lambda (x) `((lambda (x) ,x) ',x)) '`((lambda (x) ,x) ',x))

        E Offline
        E Offline
        Ennis Ray Lynch Jr
        wrote on last edited by
        #10

        You can't build a bridge if God changes the river everyday either. While I don't mean to compare DBA's to God I do mean to say that poor change control dooms projects to failure. Linq2SQL and those other regenerative tools are great for companies that want to change what they want daily and never really get to a useful result. If the schema changes you must constantly chase down business rule changes and if your application does not use business rules and complicated logic there is no reason to even have code, use Access and Crystal and save millions. (I don't mean to say you, leppie, but you reader)

        Need custom software developed? I do C# development and consulting all over the United States.
        If you don't ask questions the answers won't stand in your way.
        Doing a job is like selecting a mule, you can't choose just the front half xor the back half so when you ask me to do a job don't expect me to do it half-assed.

        L 1 Reply Last reply
        0
        • E Ennis Ray Lynch Jr

          You can't build a bridge if God changes the river everyday either. While I don't mean to compare DBA's to God I do mean to say that poor change control dooms projects to failure. Linq2SQL and those other regenerative tools are great for companies that want to change what they want daily and never really get to a useful result. If the schema changes you must constantly chase down business rule changes and if your application does not use business rules and complicated logic there is no reason to even have code, use Access and Crystal and save millions. (I don't mean to say you, leppie, but you reader)

          Need custom software developed? I do C# development and consulting all over the United States.
          If you don't ask questions the answers won't stand in your way.
          Doing a job is like selecting a mule, you can't choose just the front half xor the back half so when you ask me to do a job don't expect me to do it half-assed.

          L Offline
          L Offline
          leppie
          wrote on last edited by
          #11

          Ennis Ray Lynch, Jr. wrote:

          I don't mean to say you, leppie

          I know :) I would never tell anyone about it, if I did such silly things. ;P

          xacc.ide - now with TabsToSpaces support
          IronScheme - 1.0 beta 2 - out now!
          ((lambda (x) `((lambda (x) ,x) ',x)) '`((lambda (x) ,x) ',x))

          1 Reply Last reply
          0
          • R Rohde

            I have just started playing with making a version 2 of a web app I have done for some companies. Earlier versions used a hand-coded ADO.NET layer. Since there will be a lot of changes in the new version I am playing a bit with MEF (Microsoft Entity Framework) in order to decide whether to use it or not. Although it has got a lot of flack in the "press", I must say I really really like it. Granted it is not perfect, but I already fell more productive. The best is not having to write SQL in strings, but having compile time checking of Ling (to Entities). That is awesome. Anyway, just thought I give it a positive review since it's been dissed a lot.


            "When you have made evil the means of survival, do not expect men to remain good. Do not expect them to stay moral and lose their lives for the purpose of becoming the fodder of the immoral. Do not expect them to produce, when production is punished and looting rewarded. Do not ask, `Who is destroying the world?' You are."
            -Atlas Shrugged, Ayn Rand

            D Offline
            D Offline
            Douglas Troy
            wrote on last edited by
            #12

            I've not played with MEF, we use NHibernate, and I have to say that, now having used it enough and gaining a far better understanding of it's power, I've grown to like it. There is a considerable amount of power and flexibility in it, and you can roll your entire DAL in very short order.

            R 1 Reply Last reply
            0
            • W wout de zeeuw

              Let us know when you migrated the whole thing to linq, I'm curious about how it turns out! Will the performance drop and peculiarities be worth the productivity gain? Normally I'd be inclined just to pick the technology resulting in the best user experience, so if ado.net is that much faster, then to me the programmer experience has lower priority. EDIT: it's post like these that give me the impression that Linq to Entities and Linq to SQL (already obsoleted) were rushed out and not production level yet: http://blogs.msdn.com/adonet/archive/2008/12/02/migrating-from-linq-to-sql-to-the-entity-framework-stored-procedures-for-data-retrieval.aspx[^]. I'm gonna stay clear from all of it until .NET 4.0 at least.

              Wout

              modified on Thursday, February 12, 2009 6:27 AM

              R Offline
              R Offline
              Rohde
              wrote on last edited by
              #13

              Yes it does have its issues - but overall I'm pleased so far. But then we don't have any stored procedures on this project so that makes it a bit easier. The problems I do have tho' are the following: 1. I can't see how it can work in a team situation with source control 2. The designer is crap. It really is.


              "When you have made evil the means of survival, do not expect men to remain good. Do not expect them to stay moral and lose their lives for the purpose of becoming the fodder of the immoral. Do not expect them to produce, when production is punished and looting rewarded. Do not ask, `Who is destroying the world?' You are."
              -Atlas Shrugged, Ayn Rand

              1 Reply Last reply
              0
              • L leppie

                Linq2SQL already does that well, without all the fluff :)

                xacc.ide - now with TabsToSpaces support
                IronScheme - 1.0 beta 2 - out now!
                ((lambda (x) `((lambda (x) ,x) ',x)) '`((lambda (x) ,x) ',x))

                R Offline
                R Offline
                Rohde
                wrote on last edited by
                #14

                Well I wouldn't feel too safe building a project on an abandoned technology :):) (here I am crossing my fingers that they don't discontinue EF next year :))


                "When you have made evil the means of survival, do not expect men to remain good. Do not expect them to stay moral and lose their lives for the purpose of becoming the fodder of the immoral. Do not expect them to produce, when production is punished and looting rewarded. Do not ask, `Who is destroying the world?' You are."
                -Atlas Shrugged, Ayn Rand

                1 Reply Last reply
                0
                • D Daniel Grunwald

                  You realize "MEF" stands for the Managed Extensibility Framework[^]?

                  R Offline
                  R Offline
                  Rohde
                  wrote on last edited by
                  #15

                  No I did not. Was my post unclear? I meant the Entity Framework.


                  "When you have made evil the means of survival, do not expect men to remain good. Do not expect them to stay moral and lose their lives for the purpose of becoming the fodder of the immoral. Do not expect them to produce, when production is punished and looting rewarded. Do not ask, `Who is destroying the world?' You are."
                  -Atlas Shrugged, Ayn Rand

                  1 Reply Last reply
                  0
                  • E Ennis Ray Lynch Jr

                    By the time you are almost finished and spend 90% of your time on the 10% Microsoft will have dropped support and moved to something else. Personally, I have never minded writing SQL. You can do some pretty good stuff with it, fast.

                    Need custom software developed? I do C# development and consulting all over the United States.
                    If you don't ask questions the answers won't stand in your way.
                    Doing a job is like selecting a mule, you can't choose just the front half xor the back half so when you ask me to do a job don't expect me to do it half-assed.

                    R Offline
                    R Offline
                    Rohde
                    wrote on last edited by
                    #16

                    I don't mind writing SQL per se. But I do feel much more productive with LINQ. And I'm tired of writing boilerplate DAL code. But each to his own :):)


                    "When you have made evil the means of survival, do not expect men to remain good. Do not expect them to stay moral and lose their lives for the purpose of becoming the fodder of the immoral. Do not expect them to produce, when production is punished and looting rewarded. Do not ask, `Who is destroying the world?' You are."
                    -Atlas Shrugged, Ayn Rand

                    1 Reply Last reply
                    0
                    • D Douglas Troy

                      I've not played with MEF, we use NHibernate, and I have to say that, now having used it enough and gaining a far better understanding of it's power, I've grown to like it. There is a considerable amount of power and flexibility in it, and you can roll your entire DAL in very short order.

                      R Offline
                      R Offline
                      Rohde
                      wrote on last edited by
                      #17

                      Exactly. I have used NHibernate as well, and it really is quite powerful and flexible. No matter what O/R-Mapper one uses the productivity gain can be quite big. Time one can spend on the domain modeling instead.


                      "When you have made evil the means of survival, do not expect men to remain good. Do not expect them to stay moral and lose their lives for the purpose of becoming the fodder of the immoral. Do not expect them to produce, when production is punished and looting rewarded. Do not ask, `Who is destroying the world?' You are."
                      -Atlas Shrugged, Ayn Rand

                      1 Reply Last reply
                      0
                      • R Rohde

                        I have just started playing with making a version 2 of a web app I have done for some companies. Earlier versions used a hand-coded ADO.NET layer. Since there will be a lot of changes in the new version I am playing a bit with MEF (Microsoft Entity Framework) in order to decide whether to use it or not. Although it has got a lot of flack in the "press", I must say I really really like it. Granted it is not perfect, but I already fell more productive. The best is not having to write SQL in strings, but having compile time checking of Ling (to Entities). That is awesome. Anyway, just thought I give it a positive review since it's been dissed a lot.


                        "When you have made evil the means of survival, do not expect men to remain good. Do not expect them to stay moral and lose their lives for the purpose of becoming the fodder of the immoral. Do not expect them to produce, when production is punished and looting rewarded. Do not ask, `Who is destroying the world?' You are."
                        -Atlas Shrugged, Ayn Rand

                        B Offline
                        B Offline
                        bryce
                        wrote on last edited by
                        #18

                        you're lucky where i work i dotn even get to code in .net or c++ hardly ever last coding i did was some javascript stuff this week and here i am...working away on my MCSD :( Bryce

                        MCAD --- To paraphrase Fred Dagg - the views expressed in this post are bloody good ones. --
                        Publitor, making Pubmed easy. http://www.sohocode.com/publitor

                        Our kids books :The Snot Goblin, and Book 2 - the Snotgoblin and Fluff

                        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