题记)最是那一低头的温柔,像一朵睡莲花不胜凉风的娇羞

1)接收

  公司的X部门有个APP小项目,APP后台是C sharp的MVC,提供了一个C sharp的web from做管理员操作的后台操作,此项目是一个实习生写的,也不属于我这边,因此我对此了解是透明的,后来实习生没来了,于是这一堆从Android到wp到IOS到后台的BUG全部丢到我这了。

  得说点题外话,现在很多大学生抱怨找不到工作,但是很多找到工作的学生,人品真的不咋的,记得去年,那工作环境是相当的巴士,早9晚6,从不加班,周末从来双修,按时出去旅游,后来公司一气招了5个实习生,这些实习生,干了一段时间,招呼不打,直接就不来上班了, HR妹妹打电话问,直接就说不来上班了,然后让其归还门禁卡,后来没有下文了。

  对C sharp没有深入研究过,这次到手一个项目,想自己搞一下,有源码在手,有MSDN在那放着,还不能征服你个小小的C sharp,何惧之有?于是我卯足了劲,根据BUG列表,一个劲的在MSDN上来回扫,放在其他语言中,这些bug就是一些入门的问题,然对C sharp没有深入过,也的慢慢来。

  1):整个管理员登录的后台Web系统全部无法实现更新操作

    解决:C sharp有个Page_Load,这个方法我觉得很奇葩,因为每次页面加载会执行这个方法,于是这里显示了页面详情,表单的post提交会再次执行这个方法,然后才提交表单,正因为提交表单的时候,执行了这个方法,input里面的值被数据库的值给替换了,导致数据被覆盖,于是看了MSDN里面,微软的处理方法是判断是否是第一次调用这个方法:

    

 protected void Page_Load(object sender, EventArgs e)
{
if (!Page.IsPostBack)
{
ShowData(); //显示页面详情
}
}

  没有想明白在POST之前再次调用这个方法有什么意义。

  2)奇葩的数据,因为我看的是后台的MVC代码,并没有去生成APP客户端,APP的后台是MVC模式,客户端通过HTTP请求,返回JSON,于是从登录入手熟悉代码,整个登录流程功能倒是没啥问题,就是实现的太扯蛋了,从数据库一看:

  

  第一个念头是这玩意儿使用的啥加密方式,浏览了3次代码,没有发现可疑的加密的地方,登录验证是用存储过程实现,基本就是很简单的几句,于是我转念一想,难道。。。。

  

  很实在的插入一条,我靠,还真是,数据库没有加密,这串看着像密文的东西就是明文入库,现在写代码的小朋友,实在是不该啊,好歹MD5一下成不。

  3)在给我处理了1 mol的问题之后,活动专题有个地方,无法修改,于是再次卯足劲看问题,发现这个地方是抛了SQLException,异常信息:

    

e:过程或函数 'PR_Action_UpdateActionByActionID' 需要参数 '@ActionAddress',但未提供该参数。

  说的很明确,没有赋值,再次看代码:

  

  问题就在这个地方,这里的参数的名称没有写对,也就是给一个数据库不存在的字段赋值,传递给了存储过程,这报错也太奇葩了,不报错该字段不存在,报字段未赋值。

   这些因为人不仔细的问题坑死人啊。。

后记)基本耗时一天把整个后台的问题基本处理了,然后丢到线上,客户那边是抱怨不已,登录不进去,无法注册,速度太慢,速度是因为使用第三方模块的UI,模块里加载了很多google的css,加入第三方模块的人不太熟悉,没有去掉,导致整个系统到处慢的要命。

PS:总体来说C sharp还是不错,写起来有手感,会j2ee再来搞C shrap门槛很低,我就在想,做一个软件,将java代码做个大小写转换,然后java代码就可以变成C sharp了。。

有空研究下这个。

(原)C sharp杂谈记事(一)的更多相关文章

  1. [原][杂谈]如果人类的末日:"天网"出现

    本文由南水之源在2019年3月21日发布,转载需声明原作者 本文仅为一次基于科技发展与科幻小说的幻想,如果天网真的出现,请不要参考这篇逻辑破败的推论. 参考: 天网(Skynet),是电影<终结 ...

  2. PHP图像处理之在原图像处理

    处理原有的图像        图片处理,缩放,裁剪,翻转,旋转,透明,锐化等图片操作        一.创建图片资源            imagecreatetruecolor(width,hei ...

  3. 杂谈:Windows操作系统的介绍与对Win8操作系统市场反响冷淡原因的分析

    Windows操作系统,毫无疑问是操作系统市场上的霸主,也正因为Windows操作系统的诞生让电脑的操作性能变得更加平民化,深的用户的喜爱.至今身边的人也是选择windows操作系统的居多,这篇文章也 ...

  4. Hadoop体系结构杂谈

    hadoop体系结构杂谈 今天跟一个朋友在讨论hadoop体系架构,从当下流行的Hadoop+HDFS+MapReduce+Hbase+Pig+Hive+Spark+Storm开始一直讲到HDFS的底 ...

  5. KVM&amp;Libvirt基本概念及开发杂谈

    导读 大家好,本次肖力分享的主题是KVM&Libvirt基本概念及开发杂谈,内容有些凌乱松散,主要基于自己早期整理的笔记内容和实践感悟,有些内容难免有失偏颇,望见谅.前面先介绍下需要了解的基本 ...

  6. 死磕 java原子类之终结篇(面试题)

    概览 原子操作是指不会被线程调度机制打断的操作,这种操作一旦开始,就一直运行到结束,中间不会有任何线程上下文切换. 原子操作可以是一个步骤,也可以是多个操作步骤,但是其顺序不可以被打乱,也不可以被切割 ...

  7. ON LARGE BATCH TRAINING FOR DEEP LEARNING: GENERALIZATION GAP AND SHARP MINIMA

    目录 概 主要内容 一些解决办法 Keskar N S, Mudigere D, Nocedal J, et al. On Large-Batch Training for Deep Learning ...

  8. 【原】谈谈对Objective-C中代理模式的误解

    [原]谈谈对Objective-C中代理模式的误解 本文转载请注明出处 —— polobymulberry-博客园 1. 前言 这篇文章主要是对代理模式和委托模式进行了对比,个人认为Objective ...

  9. 【原】FMDB源码阅读(三)

    [原]FMDB源码阅读(三) 本文转载请注明出处 —— polobymulberry-博客园 1. 前言 FMDB比较优秀的地方就在于对多线程的处理.所以这一篇主要是研究FMDB的多线程处理的实现.而 ...

随机推荐

  1. 用户表单事件(focus事件)

    以前做用户系统的时候经常用到表单验证,正则表达式事件来处理和绑定事件和进行事件,这里说的其实只是一小部分,也不是很值得写,但是今天遇到了还是写一下,毕竟基础还是蛮重要的,就算懂的童鞋,巩固一下也是好的 ...

  2. hash函数的选择

    哈稀函数按照定义可以实现一个伪随机数生成器(PRNG),从这个角度可以得到一个公认的结论:哈希函数之间性能的比较可以通过比较其在伪随机生成方面的比较来衡量. 一般来说,对任意一类的数据存在一个理论上完 ...

  3. Uva 11401 数三角形

    题目链接:https://uva.onlinejudge.org/external/114/11401.pdf 题意:1~n个数里面挑3个不同的数,组成一个三角形.求方案数. 分析: 令最长的边为X, ...

  4. bpclntcmd一条神奇的命令,解决新安装nbu客户端无法连接的问题 (屡试不爽神命令)

    1. bpclntcmd案例 bpclntcmd -clear_host_cache bpclntcmd – 测试 NetBackup 系统的功能,并在 NetBackup 客户端上启用光纤传输服务 ...

  5. 2017.11.13 在C语言中是否能用函数实现模块化程序设计

    第七章 用函数实现模块化程序设计 (1)为什么要用函数? @function既是函数也是功能.函数就是用来完成一定功能的的(函数就是功能),函数名就是给这个功能起一个名字,一个C程序可由一个主函数和若 ...

  6. war和war exploded的区别

    是选择war还是war exploded 这里首先看一下他们两个的区别: (1)war模式这种可以称之为是发布模式,看名字也知道,这是先打成war包,再发布: (2)war exploded模式是直接 ...

  7. 谷歌浏览器兼容IE插件

    谷歌浏览器兼容IE插件 http://pan.baidu.com/s/1i31hspf

  8. AMD、CMD、CommonJs和ES6对比

    一.AMD(异步模块定义) AMD(异步模块定义)是RequireJS在推广过程中对模块定义的规范化产出.AMD是一个概念,RequireJs是对这个概念的实现.比如javascript语言是对ECM ...

  9. JDK 动态代理 讨债实例

    现弄一个讨债接口 package cn.itcast.g_dongtaidaili; public interface Taozhai { void taozhai(); } 再弄一个讨债实现类 pa ...

  10. tomcat.apache startup.bat闪退两种解决方法

    tomcat bin文件夹中的startup.bat闪退原因及解决方法两种 方法一:在启动tomcat时闪退,重新检查java的jre运行环境.如果环境变量忘记配置一定会导致了tomcat的闪退. 追 ...