On Mon, Feb 7, 2011 at 1:49 PM, Michael Minutillo
<michael.minuti...@gmail.com> wrote:
> You could host Razor but I'm not sure how it will handle a template so
> large.
> http://www.west-wind.com/weblog/posts/864461.aspx
> Or possibly you could use NVelocity
> http://csharp-source.net/open-source/template-engines/nvelocity
> Or StringTemplate
> http://www.stringtemplate.org/
> Or Spark
> http://sparkviewengine.com/
> If you're just replacing string tokens with precomputed string values
> though, I'd probably just do it one line at a time. Id guess that most of
> these template engines are designed to load the template into memory and
> turn it into a method that spits out the text given some kind of context
> (the way T4 does it [Preprocessed T4 template is another way to go if you
> don't mind being all in memory]).
>

Thanks Michael I'll hava look into these.

> --
> Michael M. Minutillo
> Indiscriminate Information Sponge
> Blog: http://wolfbyte-net.blogspot.com
>
>
> On Mon, Feb 7, 2011 at 10:42 AM, Bec Carter <bec.usern...@gmail.com> wrote:
>>
>> On Mon, Feb 7, 2011 at 1:33 PM, Michael Minutillo
>> <michael.minuti...@gmail.com> wrote:
>> > Well, if the template size isn't going change and this is the only app
>> > running on the machine then so be it. Chances are good that neither of
>> > those
>> > things is true. I'd still err on the side of having a single line memory
>> > at
>> > a time because it's not like the optimization is making it any harder to
>> > read or understand.
>> >
>>
>> Yup template file will mostly likely not change and app will always
>> run locally as an exe. This sort of optimisation you suggested seems
>> good enough to use as it is fairly simple.
>>
>> ...But I was kinda questioning the design of doing things this way at
>> all. It seems like what I want is a dynamic "page" (like a webform)
>> that can run and spit out text just like an asp page does.....so the
>> placeholders would really be <%= %> tags. Is something like this an
>> option? Can I somehow run an asp.net page locally? Will this cause
>> performance problems for 750megs of data which is around 70 pages? Am
>> I going completely crazy? :-)
>>
>>
>> > Michael M. Minutillo
>> > Indiscriminate Information Sponge
>> > Blog: http://wolfbyte-net.blogspot.com
>> >
>> >
>> > On Mon, Feb 7, 2011 at 10:30 AM, mike smith <meski...@gmail.com> wrote:
>> >>
>> >> On Mon, Feb 7, 2011 at 12:49 PM, Michael Minutillo
>> >> <michael.minuti...@gmail.com> wrote:
>> >>>
>> >>> If you're in .NET 4.0 land then I'd do something similar to this:
>> >>> public string ReplaceTokens(string src) { /* ... */ }
>> >>> File.WriteAllLines(outputFileName,
>> >>> File.ReadLines(inputFileName).Select(ReplaceTokens));
>> >>> The ReadLines call (new to .NET 4.0) reads one line at a time and
>> >>> returns
>> >>> it as you iterate over it so in theory you don't need to have the
>> >>> whole file
>> >>> in memory. Don't use the ReadAllLines method on a 750MB file which
>> >>> DOES read
>> >>> the whole thing in before you start.
>> >>>
>> >>
>> >>
>> >> Is that a real problem given physical RAM these days?  If you're going
>> >> to
>> >> write multiple outputs from the one template file of 750 it's going to
>> >> rapidly get more efficient to have the template in-ram.   Wait a
>> >> moment.
>> >>  You don't work for Readers Digest, do you?  I have no desire whatever
>> >> to
>> >> make them more efficient.
>> >> --
>> >> Meski
>> >>
>> >> "Going to Starbucks for coffee is like going to prison for sex. Sure,
>> >> you'll get it, but it's going to be rough" - Adam Hills
>> >
>> >
>
>

Reply via email to