我正在使用RazorEngine
来解析模板,使用以下内容:
string parsedText = Razor.Parse(template, model, "cache");
首先,如果我没有将第3个参数指定为'cache',那么对这个方法的任何调用都需要500到1000毫秒,这是很多,因为这是经常调用的。一旦传递了该参数,第一次需要500-1000ms,但任何后续调用都需要可以忽略的时间(0-1ms)。
这是在Asp.Net MVC Web应用程序的上下文中执行的。但是,一旦请求刷新,这将首次需要500-1000毫秒。
任何想法为什么需要这么长时间,以及可以做些什么?
我使用的是RazorEngine 3.2.0.0和.Net 4.5。
答案 0 :(得分:1)
答案 1 :(得分:0)
问题是第三个参数 - cacheName
。每个唯一模板必须是唯一的缓存键。
我每次都根据模板将其更改为另一个,现在它正在以完美而快速的方式运行。
问题是我只使用一个模板进行单元测试,但在实际环境中,模板正在发生变化。缓存名称密钥是静态的,因此模板缓存始终无效。