与客户端联调、sql的 in 和exist以及IE缓存问题
1、在服务器端如何与客户端联调?
步骤如下
a、在本地IIS发布一版项目,之后不能改代码,必须保持机器上和发布的代码一致。
b、将本机ip地址告诉客户端,让客户端调用。(不是用localhost)
c、在不运行状态下:debug=》附加进程=》勾选所有进程==》附加w3wp进程,就OK了
2、sql语句之in
例子
update t_org_cap set isactive='N' where contactname in (select cname from t_org_contact where isactive='N' )
如果写成exist语句,则是
update t_org_cap set isactive='N' where exists (select cname from t_org_contact where cname=t_org_cap.contactcname and isactive='N' )
3、在程序中发现一个bug,花了4个小时都不能解决。在View中Ajax调用Controller方法,设了断点之后却进不去,诡异的是Ajax的Success回调函数却成功执行了。在Chrome中却没有这个问题。最终,经过咨询和同事讨论,发现原因是IE缓存会使Ajax失效。一搜索,原来是一个经典的问题,很多人遇见过。解决办法是:在Ajax的调用url中加上一个随机参数即可。
4、又花了半天时间,与客户端联调。最终发现一个Bug:比较DateTime类型用“=”符号是危险的。因为“=”会比较datetime的tink值,而不是字面值。解决办法是写dt1.Tostring.equals(dt2.toString)方法比较相等。比较不等的话,用“>”和“<”即可。