首页
学习
活动
专区
圈层
工具
发布

ASP.NET中常用的优化性能的方法(转贴,Icyer收集整理)

21.只在必要时保存服务器控件视图状态 自动视图状态管理是服务器控件的功能,该功能使服务器控件可以在往返过程上重新填充它们的属性值(您不需要编写任何代码)。...当您不从页回发到服务器时,这将十分有用: 注意 @ Control 指令中也支持 EnableViewState 属性,该指令允许您控制是否为用户控件启用视图状态...通常,只有在检索或存储数据时,您才需要启动到服务器的往返过程。多数数据操作可在这些往返过程间的客户端上进行。例如,从 HTML 窗体验证用户输入经常可在数据提交到服务器之前在客户端进行。...使用 Page.IsPostBack 避免对往返过程执行不必要的处理 如果您编写处理服务器控件回发处理的代码,有时可能需要在首次请求页时执行其他代码,而不是当用户发送包含在该页中的 HTML 窗体时执行的代码...当不使用会话状态时禁用它 并不是所有的应用程序或页都需要针对于具体用户的会话状态,您应该对任何不需要会话状态的应用程序或页禁用会话状态。

3.6K100

【性能优化】ASP.NET常见性能优化方法简述

Page_Load 方法中构造任何 COM 组件和外部资源。...只在必要时保存服务器控件视图状态 自动视图状态管理是服务器控件的功能,该功能使服务器控件可以在往返过程上重新填充它们的属性值(您不需要编写任何代码)。...通常,只有在检索或存储数据时,您才需要启动到服务器的往返过程。多数数据操作可在这些往返过程间的客户端上进行。例如,从 HTML 窗体验证用户输入经常可在数据提交到服务器之前在客户端进行。...使用 Page.IsPostBack 避免对往返过程执行不必要的处理 如果您编写处理服务器控件回发处理的代码,有时可能需要在首次请求页时执行其他代码,而不是当用户发送包含在该页中的 HTML 窗体时执行的代码...当不使用会话状态时禁用它 并不是所有的应用程序或页都需要针对于具体用户的会话状态,您应该对任何不需要会话状态的应用程序或页禁用会话状态。

4.9K60
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    结合使用 C# 和 Blazor 进行全栈开发

    目前,你不仅要在服务器中验证输入,还要在客户端浏览器中验证输入。新式 Web 应用程序的用户希望获得准实时反馈。在填写长窗体并单击“提交”后仅看到红色错误返回的日子已经一去不复返了。...ModelBase 类包含 Blazor 客户端应用程序或服务器应用程序可用来确定是否有任何验证错误的方法。它还会在此模型更改时触发事件,以便客户端能够更新 UI。...它使用反射来查找此模型中的字段,并更新字段值。然后,它触发 CheckRules 方法,以对相应字段验证所有规则。Blazor 客户端使用此方法,以在用户在输入文本框中键入内容的同时更新值。...如果此模型中的值已更改或在内部错误字典中添加或删除了验证规则,便会触发这个事件。Blazor 客户端侦听此事件,并在事件触发时更新 UI。...RegistrationData 类继承自 ModelBase 类,后者包含所有用于验证规则并向客户端通知更改的逻辑。验证引擎的最后一部分是规则逻辑本身。接下来,我将对此进行探索。

    8.3K40

    原 探索Intellij Idea 201

    用户界面 Intellij IDEA编辑器在一些方面是特殊的,值得注意的是,大多数情况下,你可以在不离开ide的情况下执行任何ide的特性。...更多的细节,可以参阅用户界面,编辑器和工具窗指南 编辑器基础 由于在IntellijIDEA中你可以从本地历史撤销重构和还原变更,它在用户无感知的情况下进行保存更改。...获得更多细节,请参阅编辑器 代码完成 当你按ctrl+空格时触发基础完成,你得到可用的基础建议的值、类型、方法和表达式等等。如果你操作了两次,它会显示更多结果,包括私有成员和静态成员等....版本控制工具中的本地变化标签展示你的本地更改:阶段性和非阶段性的 有用的版本控制系统快捷键 事件 快捷键 版本控制工具窗体 Alt+9 弹出式VCS操作 Alt+~ 提交变动 Ctrl+K 更新项目 Ctrl...应用服务 将你的应用部署到服务器中: 通过File | Project Structure | Artifacts 来配置Artifacts 通过点击Application Servers来配置你的服务器信息

    1.4K30

    Excel编程周末速成班第18课:使用用户窗体创建自定义对话框

    创建用户窗体所涉及的此屏幕组件和其他屏幕组件如图18-1所示,这里说明如下: 用户窗体本身(此图中为空白)是放置控件以创建可视界面的位置。...要更改属性,单击其名称。然后,进行更改的方式取决于特定的属性: 对于枚举属性(可以采用一组预定义值中的任何一个),使用右列中的下拉列表选择值。...Left,从屏幕左边缘到窗体左边缘的距离,以磅为单位。 ShowModal,如果为True(默认值),则在执行任何其他代码之前和使用应用程序的任何其他部分之前用户必须关闭用户窗体。...Top,从屏幕顶部到窗体顶部的距离(以磅为单位)。 Width,窗体宽度(以磅为单位)。 注意,仅当StartUpPosition属性设置为Manual时,Top和Left属性才会影响窗体的初始位置。...表18-2:设置用于UserForm对象的StartUpPosition属性 ShowModal属性通常保留其默认值True,这适用于大多数用户窗体,因为直到关闭窗体(例如,当窗体用于接受来自用户的数据输入时

    15.6K30

    Blazor 中的路由和路由模板

    过去的 ASP.NET Web 窗体和现代 Web 明显区别在于 Web 服务器入口是否存在路由组件。在 Web 窗体中,绝大多数 Web 终结点都是物理文件资源,直接通过其页面路径调用。...在客户端上,路由器参与多种情况,最常见的情况是用户单击链接、表单上的提交按钮或下拉列表中触发服务器调用的项。路由器绑定到内部位置更改事件,并从客户端处理导航到新请求路径的整个过程。...毋庸置疑,当应用程序的位置以编程方式更改时,路由器也会启动。最后一点也非常重要,路由器在浏览器历史记录中记录任何它负责的位置更改,因此后退和前进按钮可以按用户的期望工作。...下面是参数路线的示例: @page “/user/view/{Id}” 当 URL 包含后跟 /user/view/ 的服务器名称时,URL 模式匹配算法会触发此路由。...但是,当定位标记用于呈现菜单或导航栏时,可能需要一些额外的工作来调整 CSS 样式以反映链接的状态。 内置的 Blazor NavLink 组件可以用于任何需要定位点元素的地方,尤其是在菜单中。

    11.3K21

    【愚公系列】2023年11月 WPF控件专题 2023秋招WPF高频面试题

    解冻时,Freezable 的行为与任何其他对象一样。 冻结后,无法再修改 Freezable。 Freezable 提供了一个 changed 事件来通知观察者对对象的任何修改。...当设置依赖属性的值时,它不会存储在对象的字段中,而是存储在基类 DependencyObject 提供的键和值字典中。 条目的键是属性的名称,值是您要设置的值。...当您在根元素上设置 FontSize 时,它适用于下面的所有文本块,除非在元素中覆盖该属性值。 更改通知 ncyObject* 继承的方法。...当设置依赖属性的值时,它不会存储在对象的字段中,而是存储在基类 DependencyObject 提供的键和值字典中。 条目的键是属性的名称,值是您要设置的值。...当您在根元素上设置 FontSize 时,它适用于下面的所有文本块,除非在元素中覆盖该属性值。 更改通知 依赖属性具有内置的更改通知机制。 通过在属性元数据中注册回调,您会在属性值更改时收到通知。

    4.5K22

    《修炼之道:.NET 开发要点精讲》

    7.2 容器 – 组件 – 服务模型 > 位置 2601 在 我们 向 窗体 设计 器 中 拖动控件 时, 是 会 执行 类似 “new Button();” 这样 的 代码, 在 内存 中 实例化 一个...前面 提 到过, 当 一个 组件 不属于 任何 一个 容器 时, 那么 它 通过 GetService 方法 请求 的 服务 肯定 返回 为 null。...注:(1)(2) 方法 均不 适合 嵌套组件, 因为 窗体 设计 器 只会 将 最外 层 组件 的 DesignMode 属性 值 设置 为 true。...10.2 常见的 “泵” 结构 > 位置 4179 浏览器 每次 发送 http 请求 时, 都 必须 与 Web 服务器 建立 连接。Web 服务器 端 请求 处理 结束 后, 连接 立刻 关闭。...观察者模式 要 强调 的 是, 当 一个 目标 本身 的 状态 发生 改变( 或者 满足 某一 条件) 时, 它 会 主动 发出通知, 通知 对 该 变化 感兴趣 的 其他 对象。

    85320

    Apriso 开发葵花宝典之传说的完结篇GPM

    为Processes和Operations指定默认修订—如果不希望目标服务器上的特定实体被包中的实体覆盖,请取消列表上的选择。当调用实体并且所有其他修订在当时无效时,将使用默认修订。...在生成包时就会自动生成两个脚本,而不需要单独的为每种数据库类型进行添加。 Source Repository 可以将项目存储在SubVersion版本控制系统中。当生成部署包时,项被提交到源存储库。...当第一次将这样的项目添加到存储库中时,没有版本可以与之比较,因此在存储库中创建的文件包含项目的类型和名称以及相关的信息。...输入:存储库名称、SVN地址、用户、密码,点击OK,后会弹出是否需要新建SVN结构询问窗体: 点击Yes后,GPM自动才SVN服务器上建立相关目录结构。...为每个功能领域使用单独的项目,并将公共元素放入可用于许多功能领域的单独项目中 在相互依赖的项目之间创建依赖关系 当目标服务器需要更新时,检测更改并使用generate Latest changes选项

    1.1K10

    【愚公系列】2023年11月 Winform控件专题 numericUpDown控件详解

    欢迎 点赞✍评论⭐收藏前言Winform控件是Windows Forms中的用户界面元素,它们可以用于创建Windows应用程序的各种视觉和交互组件,例如按钮、标签、文本框、下拉列表框、复选框、单选框、...使用InterceptArrowKeys属性可以提高NumericUpDown控件的使用体验,使用户可以使用更自然的键盘输入方式来更改数字值。...其他的使用方法基本与普通的NumericUpDown控件一致。需要注意的是,当启用InterceptArrowKeys属性时,用户可以通过键盘输入任何数字,而不仅仅是整数或浮点数范围内的数字。...然后我们在消息框中显示选择的值。当用户使用numericUpDown控件更改值时,可以使用ValueChanged事件来响应更改。...我们在numericUpDown1的ValueChanged事件处理程序中获取新的值,并在窗体上的一个标签控件中显示它。

    1.1K11

    【愚公系列】2023年11月 Winform控件专题 CheckedListBox控件详解

    欢迎 点赞✍评论⭐收藏前言Winform控件是Windows Forms中的用户界面元素,它们可以用于创建Windows应用程序的各种视觉和交互组件,例如按钮、标签、文本框、下拉列表框、复选框、单选框、...我们首先在窗体加载时添加了一些列表项,并设置了CheckedListBox的一些属性。...其中,CheckOnClick属性是控制当用户单击列表框中的项时是否自动选中该项的一个属性。当CheckOnClick属性设置为true时,单击项时,该项的选中状态会自动切换。...当CheckOnClick属性设置为false时,单击项时,该项并不会自动选中或取消选中。相反,单击项只会更改列表框的焦点,这样用户可以使用键盘上的箭头键来更改选定项。...在运行应用程序时,这些项目将出现在窗体上,每个项目都有一个相应的复选框。现在,我们需要为CheckBoxList控件添加一些事件处理程序,以便在用户选择某个项时获取通知。

    6.8K11

    ASP.NET的命名空间

    System.Web.UI.HtmlControls 说明:包含用于HTML特定控件的类,这些控件可以添加到Web窗体中以创建Web用户界面。...System.Web.UI.WebControls 说明:创建ASP.NET服务器控件的类,当添加到窗体时,这些控件将呈现浏览器特定的HTML和脚本,用于创建和设备无关的Web用户界面。...System.Web.Services 说明:能够使用和生成XML Web Service的类,这些服务时驻留在服务器中的可编程实体,并通过标准Internet协议公开。...System.Timers 说明:提供基于服务器的计时器组件,用于按指定的间隔引发事件。...System.Net.Networkinformation 说明:提供对网络流量数据、网络地址信息和本地计算机的地址更改通知的访问,还包含实现Ping实用工具的类。

    3.9K10

    C++ Qt开发:自定义Dialog对话框组件

    Qt 是一个跨平台C++图形界面开发库,利用Qt可以快速开发跨平台窗体应用程序,在Qt中我们可以通过拖拽的方式将不同组件放到指定的位置,实现图形化开发极大的方便了开发效率,本章将重点介绍自定义Dialog...,需要说明的是此类对话框也是一种窗体,所以可以在其上面放置任何通用组件,以实现更多复杂的开发需求。...,对于主窗体来说,当用户点击on_pushButton_clicked()按钮时,我们需要动态将自己创建的Dialog加载,读取出主窗体编辑框内的值并设置到子窗体内,当用户按下QDialog::Accepted...时则是获取子窗体内的值,此时通过调用ptr->GetValue()子窗体的成员函数来返回一个字符串,并将其设置到父窗体的编辑框内,主函数代码如下所示; // 首先要包含Dialog对话框类 #include...onBtnClick()槽函数上面,当需要发送数据时直接通过调用emit sendText触发信号,并携带子窗体中send_data的数据; #include "dialog.h" #include "

    1.9K10

    ASP.NET保持用户状态的九种选择

    Cookies Form Post / 隐藏的窗体字段 特定的用户需要窗体的数据,并且它需要在单个请求到应用程序终止的任何阶段都保持。...在图6中,一个ASP.NET页面设置了某个用户的ID,在这以后它保持在一个隐藏的窗体字段中。后面的向任何页面的请求保留这个值,直到页面使用Submit按钮链接到其它的用户。...隐藏窗体字段再也没有用于在.NET框架组件上建立的应用程序间传递数据的主要原因之一是.NET框架组件控件都可以使用ViewState自动维护自己的状态。...使用QueryStrings的另一个好处是页面的状态包含在URL中。这意味着用户可以把某个通过QueryStrings建立的窗体放入他的收藏夹中。当它们作为收藏返回到页面时,将与作收藏的时候一样。...); Cache对象的最强大的特性之一是当缓存中的某个项终止时执行回调的能力。

    2.5K20

    C++ Qt开发:自定义Dialog对话框组件

    Qt 是一个跨平台C++图形界面开发库,利用Qt可以快速开发跨平台窗体应用程序,在Qt中我们可以通过拖拽的方式将不同组件放到指定的位置,实现图形化开发极大的方便了开发效率,本章将重点介绍自定义Dialog...,需要说明的是此类对话框也是一种窗体,所以可以在其上面放置任何通用组件,以实现更多复杂的开发需求。...,对于主窗体来说,当用户点击on_pushButton_clicked()按钮时,我们需要动态将自己创建的Dialog加载,读取出主窗体编辑框内的值并设置到子窗体内,当用户按下QDialog::Accepted...时则是获取子窗体内的值,此时通过调用ptr->GetValue()子窗体的成员函数来返回一个字符串,并将其设置到父窗体的编辑框内,主函数代码如下所示;// 首先要包含Dialog对话框类#include...onBtnClick()槽函数上面,当需要发送数据时直接通过调用emit sendText触发信号,并携带子窗体中send_data的数据;#include "dialog.h"#include "ui_dialog.h"Dialog

    1.1K10

    SQL Server 复制进阶:Level 1 - SQL Server 复制

    发布者监视所有文章的更改,并提供有关分发者可用更改的信息。 分销商 分销商是SQL Server实例跟踪所有订户和所有发布的更改,并确保每个订户得到每个更改的通知。大部分更改都在分配数据库中进行跟踪。...扫描更改由日志读取器代理完成,该日志读取器代理读取发布者数据库的事务日志。如果影响已发布对象的更改发生了,那么这些更改将记录在分发数据库中的分发服务器上。从那里他们向订户进发。...但是,您也可以按照SQL Server 2008和2005上的示例进行操作。 建立分配 分销商是事务复制的核心。设置所有其他组件时需要可用,因此需要先配置。...运行分发服务的机器还将包含分发数据库。 将此选项保留为默认值,即在此服务器上安装发行版,然后单击“下一步”。 ? 图3:选择分发服务器 这将弹出图4中的对话框,要求您选择快照文件夹的位置。...再次,最后的屏幕(图23)显示进程信息和过程完成时的成功状态。 ? 图23:执行状态 第一次订阅 在大多数情况下,用户将在不同的机器上,但有一些情况下,您希望它在同一个实例上。

    4.1K40

    Excel VBA编程

    数组的存取 当将Excel表中的数据传递给数组时,默认建立的是一个二维数组,因此在取数组的值时,需要传递两个数值进去,如果只传入一个数组,会出现下标越界的警告。...worksheet对象的selectionchange时间告诉VBA:当更改工作表中选中的单元格区域时自动执行该事件的事件过程。...在重新计算工作表之后发生 SheetChange 当更改了任意工作表的单元格之后发生 sheetDeactivate 当任意工作表转为非活动状态时发生 sheetFollowHyperLink 当单击工作簿中的任意超链接时发生...SheetPivotTableUpdate 当更新任意数据透视表时发生 sheetSelectionchange 当任意工作表中的选定区域发生更改时发生 WindowActivate 在激活任意工作簿窗口时发生...控件的Tab键顺序决定用户按下【Tab】或【Shift+Tab】组合键后控件激活的顺序。在设计窗体时,系统会按照添加控件的先后顺序确定控件的Tab顺序。但是这个顺序是可以更改的。

    54K44

    1-3 Winform 中的常用控件(

    图1-8 员工信息录入窗体目标界面 u 实验步骤(1): 由图1-9所示,从工具箱之中拖拽具体的控件到Form窗体上,并更改标签对象和按钮的text属性为图1-8所标内容。...Show 相当于将控件的 Visible 属性设置为 True 并显示控件 事件 说明 Click 用户单击控件时将发生该事件 表1-1 Label标签控件属性及方法 2....案例学习:标签控件的隐藏,窗口打开与关闭 本次实验目标是建立两个窗体,当点击图1-11的登录系统时候,可以打开另一个窗体,在点击文字打开后显示学校名称,点击文字隐藏时候隐藏学校名称。...图1-11 窗口打开与关闭窗体目标界面 u 实验步骤(1): 由图1-11所示,从工具箱之中拖拽标签控件和linkLabel超链接文本控件到Form窗体上,更改标签文本的颜色、字体和大小属性,填写每个控件的...说明 KeyPress 用户按一个键结束时将发生该事件 表1-2 TextBox文本框控件属性及方法 Button按钮控件主要接收用户功能确认操作,以期执行具体的触发事件。

    4K10

    【愚公系列】2023年11月 Winform控件专题 CheckBox控件详解

    欢迎 点赞✍评论⭐收藏前言Winform控件是Windows Forms中的用户界面元素,它们可以用于创建Windows应用程序的各种视觉和交互组件,例如按钮、标签、文本框、下拉列表框、复选框、单选框、...当ThreeState属性为true时,CheckBox的Checked属性将不再只是true或false,而是一个枚举类型CheckState,其包含三个值:Checked:表示选中状态;Indeterminate...当CheckBox处于半选中状态时,可以通过程序来更改其状态,例如:checkBox1.CheckState = CheckState.Indeterminate;为了保护用户对CheckBox状态的选择...以下是实现步骤:在Visual Studio中创建一个新的Winform应用程序。在设计视图中,从工具箱中拖动一个CheckBox控件到窗体上。...双击窗体上的任何一个checkBox控件,在单击事件中添加以下代码:private void chkRed_CheckedChanged(object sender, EventArgs e){

    2.8K31
    领券