在ASP.NET中,如果代码和asp.net标记位于一个ascx文件中(例如用于用户控件),与使用cs文件和designer.cs文件的Code Behind的用户控件相比,它是否会表现不佳?
答案 0 :(得分:2)
对于性能而言,它不会有任何区别,但出于可维护性的原因,您应该将代码与标记分开。
答案 1 :(得分:2)
一个有趣的事实 - Microsoft sometimes suggests您为ASP.net页面创建了代码隐藏程序集,以实现可维护性和表示/业务逻辑分离。
但是,当您查看SharePoint的构建方式时,其页面(例如/_layouts/workflow.aspx
)将充满内联代码。
他们实际上确实表明内联代码的速度是the same as code-behind:
另一个神话是代码隐藏是 比内联更快,这是 绝对错误。没关系 你的ASP.NET代码 申请生命,无论是在 代码隐藏文件或内联 ASP.NET页面。
这让我觉得性能和可维护性并不总是你选择内联代码而不是代码隐藏的主要原因。
答案 2 :(得分:2)
不同之处在于初始编译时间;当您的应用首次启动时。
使用代码隐藏文件,您可以预先编译内容并将dll传递给准备好的服务器。使用内联代码,框架将在应用程序启动时将代码编译为程序集。但是在这一点之后编译代码就是编译代码,而且没关系。