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. MVC and RazorEngine rant

MVC and RazorEngine rant

Scheduled Pinned Locked Moved The Lounge
rubyasp-nethelpannouncementhtml
25 Posts 10 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.
  • M Marc Clifton

    Fabio Franco wrote:

    Ain't string.Replace, simple enough?

    You're absolutely right, but I thought I might see how this is done for something simple (where string.Replace would indeed work much less painfully) in case I want to use RazorEngine for something more complicated later on. So, in some ways, it's good I learned about this now. Marc

    Imperative to Functional Programming Succinctly Higher Order Programming

    F Offline
    F Offline
    Fabio Franco
    wrote on last edited by
    #16

    Got ya, I'm sorry I can't give you any advice on a good tool for that. I never had to do anything overly complicated

    To alcohol! The cause of, and solution to, all of life's problems - Homer Simpson ---- Our heads are round so our thoughts can change direction - Francis Picabia

    1 Reply Last reply
    0
    • P Pete OHanlon

      As long as you use Mongo for the right problem, it's very powerful and remarkably straightforward to use, especially if you use the Mongoose package. Certain problems require you to go outside of Mongo - for instance, when it comes to full text, I tend to use ElasticSearch instead because the full text support in Mongo isn't that clever. The hardest thing is to stop thinking of data in the way you think of it for an RDBMS. Once you get around that, and understand what concepts like map-reduce actually means, then you're well on your way to developing a good understanding of it. I'm delivering a talk on Socket.IO next month where I'll show MEN part of that stack (I'm not using Angular for the demo), and I'll hopefully be showing how easy it is to use this stack.

      J Offline
      J Offline
      jschell
      wrote on last edited by
      #17

      Pete O'Hanlon wrote:

      As long as you use Mongo for the right problem,

      Yep.

      Pete O'Hanlon wrote:

      Once you get around that, and understand what concepts like map-reduce actually means, then you're well on your way to developing a good understanding of it.

      Keeping in mind of course that this is only true if it is still based on your first requirement that it is used for right problem in the first place. If it isn't used for the right problem then one tends to end up with 'solutions' that are similar to medieval surgery (hack and hope it lives.)

      P 1 Reply Last reply
      0
      • J jschell

        Pete O'Hanlon wrote:

        As long as you use Mongo for the right problem,

        Yep.

        Pete O'Hanlon wrote:

        Once you get around that, and understand what concepts like map-reduce actually means, then you're well on your way to developing a good understanding of it.

        Keeping in mind of course that this is only true if it is still based on your first requirement that it is used for right problem in the first place. If it isn't used for the right problem then one tends to end up with 'solutions' that are similar to medieval surgery (hack and hope it lives.)

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

        jschell wrote:

        Keeping in mind of course that this is only true if it is still based on your first requirement that it is used for right problem in the first place

        Oh, definitely. There is a temptation to see everything as a document shaped problem if you aren't too rigorous with yourself.

        1 Reply Last reply
        0
        • M Marc Clifton

          So, on the advise of SO, I installed RazorEngine so that I could generate some HTML directly from a template to create the body of a registration email. Why this can't be done in some simple way with Razor directly is beyond me, but nooo, one of the suggestions was to use RazorEngine. So I use the package manger to install it, it does a couple updates and I get this effing message: Inheritance security rules violated by type: 'System.Web.WebPages.Razor.WebPageRazorHost'. Derived types must either match the security accessibility of the base type or be less accessible. So I google around and everyone tells me to remove the dependency in web.config. Sure enough, that works. But NOW, after I deploy the app to WinHost (I don't think this is their fault), I get: Could not load file or assembly 'System.Web.Razor, Version=2.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35' or one of its dependencies. The located assembly's manifest definition does not match the assembly reference. (Exception from HRESULT: 0x80131040) But of course. That makes total sense. NOT. :mad: So then I figure I ought to fix the root cause of the problem locally and not just delete the dependency in web.config. So I find this post.[^] Useful. Especially this (regarding my original error): Which could not be resolved by the solution listed in the reference, however after doing some research I found my answer in the update release notes. The "Removal of security transparent attribute. Note: This is a breaking change, and makes Razor 3 incompatible with MVC4 and earlier, while Razor 2 is incompatible with MVC5 or assemblies compiled against MVC5". OMFG. Really? So how the eff do I install Razor 2, I really don't give a rat's arse about compatibility with MVC5 (which, when reading about how to install that, looks like yet another rabbit hole of a nightmare I don't want to go down.) Wow Microsoft. In attempting to copy the garbage that is Ruby on Rails, I believe you have taken what was a slightly smelly pile of refuse and turned it into something that looks like

          P Offline
          P Offline
          Peter Shaw
          wrote on last edited by
          #19

          I guess i gotta step in and save all your asses then :-) Swig.JS[^] Does everything that Razor can do in pure JS... I use it all the time when converting solutions from MVC to Larvel/PHP, the programming model is almost identical.. Shawty

          M 1 Reply Last reply
          0
          • P Peter Shaw

            I guess i gotta step in and save all your asses then :-) Swig.JS[^] Does everything that Razor can do in pure JS... I use it all the time when converting solutions from MVC to Larvel/PHP, the programming model is almost identical.. Shawty

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

            Peter Shaw wrote:

            I guess i gotta step in and save all your asses then

            :) Swig looks cool, but I really do not want to be coding in JavaScript as the primary language, especially on the server-side, which is also why I'm not particularly interested in node.js, though at some point I'll take a poke at is. Marc, the Biased :)

            Imperative to Functional Programming Succinctly Higher Order Programming

            P 1 Reply Last reply
            0
            • M Marc Clifton

              Peter Shaw wrote:

              I guess i gotta step in and save all your asses then

              :) Swig looks cool, but I really do not want to be coding in JavaScript as the primary language, especially on the server-side, which is also why I'm not particularly interested in node.js, though at some point I'll take a poke at is. Marc, the Biased :)

              Imperative to Functional Programming Succinctly Higher Order Programming

              P Offline
              P Offline
              Peter Shaw
              wrote on last edited by
              #21

              It's not as bad as it looks Marc :-) and this is coming from someone who'd still write everything directly in ASM if it was an accepted route...

              M 1 Reply Last reply
              0
              • P Peter Shaw

                It's not as bad as it looks Marc :-) and this is coming from someone who'd still write everything directly in ASM if it was an accepted route...

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

                Peter Shaw wrote:

                and this is coming from someone who'd still write everything directly in ASM if it was an accepted route...

                Heh. I'm with you there! I did take a closer look, and yes, it doesn't look that bad. What I'd love though is for a proper "page designer" that would just figure out all the damn CSS, HTML, model, and "view-code" for whatever view engine I want to use. Doing web development is like going back to the stone ages. Or probably more accurately, being thrown into the cockpit of a 747 and told to land the plane with a 50 MPH crosswind on instruments alone. Marc

                Imperative to Functional Programming Succinctly Higher Order Programming

                P 1 Reply Last reply
                0
                • M Marc Clifton

                  Peter Shaw wrote:

                  and this is coming from someone who'd still write everything directly in ASM if it was an accepted route...

                  Heh. I'm with you there! I did take a closer look, and yes, it doesn't look that bad. What I'd love though is for a proper "page designer" that would just figure out all the damn CSS, HTML, model, and "view-code" for whatever view engine I want to use. Doing web development is like going back to the stone ages. Or probably more accurately, being thrown into the cockpit of a 747 and told to land the plane with a 50 MPH crosswind on instruments alone. Marc

                  Imperative to Functional Programming Succinctly Higher Order Programming

                  P Offline
                  P Offline
                  Peter Shaw
                  wrote on last edited by
                  #23

                  I might actually be able to help you there... well if I ever get the project I started finished :-) one of my many temporarily abandoned ones.

                  M 1 Reply Last reply
                  0
                  • P Peter Shaw

                    I might actually be able to help you there... well if I ever get the project I started finished :-) one of my many temporarily abandoned ones.

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

                    Peter Shaw wrote:

                    I might actually be able to help you there...

                    Landing a 747? ;) Actually, I'm using Razor at the moment for a fun little pro-bono project, putting together a website for the Dartmouth MA Department of Public Works -- did we talk about that before? If you want to get involved, the code base is here[^] and the website is here[^] -- takes forever to spin up. I'm looking into Razor Generator[^] to speed up the first-time page loads. Marc

                    Imperative to Functional Programming Succinctly Higher Order Programming

                    P 1 Reply Last reply
                    0
                    • M Marc Clifton

                      Peter Shaw wrote:

                      I might actually be able to help you there...

                      Landing a 747? ;) Actually, I'm using Razor at the moment for a fun little pro-bono project, putting together a website for the Dartmouth MA Department of Public Works -- did we talk about that before? If you want to get involved, the code base is here[^] and the website is here[^] -- takes forever to spin up. I'm looking into Razor Generator[^] to speed up the first-time page loads. Marc

                      Imperative to Functional Programming Succinctly Higher Order Programming

                      P Offline
                      P Offline
                      Peter Shaw
                      wrote on last edited by
                      #25

                      That too.... :laugh:

                      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