从剃须刀调用C#助手时是否会牺牲性能

本文关键字:是否 牺牲 性能 剃须刀 调用 | 更新日期: 2023-09-27 18:21:59

如果我(从Razor视图),调用一个c#Helper(I.E编译成DLL)。这里有性能损失吗?

E.G

我可以使用@Model.User.GetFriendlyName();(调用DLL中Model中的方法)。

或者,我可以将friendlyname传递到Razor视图中(最初存储在视图模型中)。

这两种方法之间是否存在速度差异?

从剃须刀调用C#助手时是否会牺牲性能

在视图中调用User.GetFriendlyName()并不比其他任何地方都慢。Razor视图在后台被编译成类。

需要记住的一件事是,如果该方法从数据库中获取了一些会导致额外查询的内容,并且如果使用带有延迟加载的orm,那么上下文/会话可能会丢失。