zoukankan      html  css  js  c++  java
  • asp.net入門經典讀書筆記

    一、提高性能的方法:
    1.Remember that database access is relatively expensive—it
    consumes both time and resources.
    2.應用一個控件屬性多次是,最好先把屬性放到一個局部變量中
    二、處理錯誤
    1.防禦代碼
    In general, you should always check incoming parameters if the method is a public one—that is, it is
    called from outside the class. If it’s a method that isn’t accessible from outside of the class (private or
    556
    Chapter 15
    protected), then this is less important because you’re probably supplying those parameters yourself,
    although this doesn’t necessarily mean the parameters will be correct—you might get the values from
    elsewhere before passing them into the method.

    2.The solution to SQL injection is to use parameters, because these automatically prevent this type of attack.
    If you’re using stored procedures, which you should be, then parameters are required for passing information
    into the procedure, but when you’re building SQL dynamically, you can still use parameters. So if
    you were running a SqlCommand, you could do this:
    string SQL = “SELECT * FROM Employee WHERE LastName=@LastName”
    SqlCommand cmd = new SqlCommand(SQL, conn);
    cmd.Parameters.Append(“@LastName”, SqlDbType.VarChar, 50);
    cmd.Paramaters[“@LastName”].Value = LastName.Text;
    Here @LastName is the parameter name, and because the value is assigned via the parameter, no SQL
    injection can take place. This is because ADO.NET protects against SQL injection attacks when using
    parameters—the values passed into parameters are checked for specific content that would signify an
    attack.

  • 相关阅读:
    @try { } @catch (NSException *exception) {} @finally {}
    键盘点出来就退不掉了,你可以把这几句加到有键盘的控制器里
    测试最新的微信iOS SDK 报错误
    堆、栈知识小结
    PV操作
    continue & break
    dll的def文件与__declspec(dllexport)导出函数方式比较
    setupapi.h和setupapi.lib該如何使用
    批量缺少头文件的解决办法(添加包含目录)
    易犯错误总结:
  • 原文地址:https://www.cnblogs.com/anchenjie007/p/1017287.html
Copyright © 2011-2022 走看看