昨天晚上突然碰到一个很莫名其妙的bug,具体描述如下。
由于我要三个order report页面,但是三个页面中order的显示处理是完全一摸一样的。
于是我想到了用asp.net的skined Web Control把一样的html内容抽出到服务器端标记中,这样三个页面就可以引用同一个服务器端标记,如果改显示格式修改的话,只要修一个一个ascx文件即可,不要修改三个aspx页面,可以较好的符合DRY原则。
就在我觉得大功告成可以休息的时候,突然发现当查询条件改变的时候,Skined Web Control中显示内容的记录数变了,但是显示的内容居然是上一次查询的结果。
自己调试,用google搜索,折腾将近3个小时未果,于是试图把放在ascx页面的repeater中的<%# Eval %>表达式替换为<asp:label>,奇迹发生了,居然就可以正确的显示查询结果了,于是由此我得出了一个结论:用LoadControl方法会导致ascx页面中的Repeater的<%# Eval %>绑定失效。
本打算就此结束了,可是这个时候我发现网络上有篇老外的文章中也是利用和我一样的做法来定制ascx控件,他也用到了repeater和Eval但是,好像没有提到说又这样的问题,于是我对照的他的代码和我自己的代码,发现唯一不一样的地方如下
老外的代码:
cusControl = LoadControl();
Controls.Add(cusControl);
InitializeControl(cusControl);
我的代码:
cusControl = LoadControl();
InitializeControl(cusControl);
Controls.Add(cusControl);
最后两句的顺序不一样而已,于是就想难道一个顺序的差别又这么大?抱着死马当活马医的心理,我尝试了修改成老外的做法,编译、运行。漫长的等待后,奇迹居然发生了,Eval生效了,折腾了3个多小时的问题居然这么简单就能解决。强烈的鄙视一下自己啊。
不过现在的问题就是不知道为什么顺序不一样会导致这样的bug呢,请哪个知道的兄弟给个说法,谢谢了!!!!!!
分享到:
相关推荐
sfOnlyThisForm.News in 3.70 10/27/2005*Support TAdvPageControl.*Support TRzMenuButton, TcxButton with cxbkDropDownButton.*work with RECREATEWND message for skined control has scrollbar.*Fix a memory ...
*work with RECREATEWND message for skined control has scrollbar. *Fix a memory leak bug. *Fix paint bug for TPagecontrol in win95. News in 3.65 10/21/2005 *Add TSkindata.Options.xoMDIChildBorder ...
matlab+数据预处理+统计+异常值+检测+适用维度较小的数据 基于统计的异常值检测是一种利用统计学原理和技术来识别数据集中异常值或离群点的方法。这种方法通过考察数据集的统计特性来发现与其他样本显著不同的观测值。我们可以利用几种常见的方法,包括3σ(sigma)准则、Z分数(Z-score)和Boxplot(箱线图)。
2021-2022中国中东欧智慧教育学术会议报告集-25页(1)
MATLAB是MathWorks公司出品的商业数学软件,用于数据分析、无线通信、深度学习、图像处理与计算机视觉、信号处理、量化金融与风险管理、机器人,控制系统等领域。 【主页资源】 遗传算法、免疫算法、退火算法、粒子群算法、鱼群算法、蚁群算法和神经网络算法等常用智能算法的MATLAB实现,包含TSP、LQR控制器、结合量子算法、多目标优化、粒子群等matlab程序。 MATLAB计算机视觉与深度学习实战项目:直方图优化去雾技术、基于形态学的权重自适应图像去噪、多尺度形态学提取眼前节组织、基于分水岭算法的肺癌分割诊断、基于harris 的角点检测(可以直接用matlab自带的函数)、基于K均值的据类算法分割(算法时间有点久)、 区域生长算法进行肝部肿瘤分割(原始分割精度不高)、matlab编写的图像处理相关算法代码及算法原理等等。
目前实现的功能: 示波器 伏特计 逻辑分析仪(实验性) PWM测量 PWM输出 基于DDS(直接数字合成)的发生器 功能的选择取决于所选的目标。在小型器件上,由于外设约束或引脚排列有限,仅实现了功能子集。 固件还可以在不同的配置之间切换。例如,和 .Voltmeter + PWMOscilloscope + PWM 固件通过虚拟 COM 端口(USB CDC 类)直接或使用 UART 转 USB 桥接器与 PC 应用程序通信。 如何运行固件 您可以在发布部分下载已编译的二进制文件,并通过 ST-Link(或任何其他调试器)或通过 USB 设备固件更新 (DFU) 下载
vhdl
B2141 确定进制
bootstrap模板
岗位管理体系5大要素全解读.pdf
随着计算机网络的不断发展,网页逐渐融入人们的生活。快速及时的新闻浏览,五彩缤纷的网上信息,使网络与人们的生活息息相关,于是世界上又出现了第三媒体——Internet。它打破了地域限制,真正使信息得以共享,改变了人们的工作和生活方式。官方网页是企业和个人的宣传自己的重要手段,各大公司和个人主页包括演艺圈艺人,作家,大学生等,纷纷创建自己的主页和Web站点,向全世界宣告自己的存在,展示自己的产品、服务及个人爱好等等。我的系统由:会员登录、会员注册、论坛等之类的组合而成的。
【技巧】人才盘点体系构建最佳实践.docx
9471 - Uruk-hai Army.mpd
编译原理 大作业 基本功能:类 C 语言编译为汇编语言 支持语法: 1. 加减乘除转换 2. print 3. 输出转换 4. if 条件转换 5. 赋值语句转换 具体实现原理 源文件——词法分析——语法分析——三元式生成——目标代码生成 词法分析——预处理(识别)——分类——得到结果 语法分析——基本转换——相关语法分析 主要模块 词法分析模块-词法分析.cpp 语法分析模块-语法分析.cpp 使用模块-源.cpp 函数声明-header.h
10240 - UCS Red Five X-wing Starfighter.mpd
7307 - Duel in the Air.mpd
B2111 基因相关性
6844 - Seismologic Vehicle.mpd
AUTOSAR_SRS_SecureOnboardCommunication.pdf
AUTOSAR_SWS_FlashEEPROMEmulation.pdf