程序员的资源宝库

网站首页 > gitee 正文

学习笔记(党章学习笔记)

sanyeah 2024-04-03 18:36:35 gitee 5 ℃ 0 评论

   8月6日-----11日 笔记

周一

一、 认识索引
1,数据库的索引相当于文章的目录,建立索引主要是为加快查询速度;
2,索引分为唯一索引、主键索引,聚集索引;
3,我们在建立主键的时候会自动创建主键索引,因此当查询时使用主键将加快访问速度。

二、学习C#的单元测试
1,vs2010本身自带有测试,可以创建单元测试对某个类库进行测试。测试速度快。

三、解决低级错误:测试售房刷新
1,低级错误,刷新之前没有调用登录返回httpclient对象,而是直接new了一个对象。
要避免如此低级错误,还有一些是拼写的低级错误,以前我帮同学调试过。
编写代码时尽量不要复制代码,即便功能相似;
编写代码时要先考虑业务逻辑,比如要想实现刷新,必须先登录才可以。

四、阅读公司以前编写的代码
1,public static void SetCookie(string name, string valu, string domain, DateTime? expires)
这个函数参数里有?,可空类型,即使是值类型,也可以传递null;这个样子其他的重载函数可以这样调用:
SetCookie(name, valu, domain, null);相当于给值类型expires赋值为空
2,?为可空类型,??为空合并运算符,如 a??b,当 a 不为空时,返回a;a 为空,返回b;
“a??b??c” 的形式按“a??(bb??cc)” 计算。向右结合。
3 C# string类型是特殊的引用类型,它的实例是只读的。
如何你在函数内部修改了参数string,那么系统会重新分配一块空间来存放;
如果想使用引用,就在参数和调用出加ref;如static void StrChange(ref string str);StrChange(ref str);//调用方法

五,
1 HttpCookie
(1),服务器端可以通过Request.Cookies.Get("DataCookieExample")来判断客户端是否存在某个cookie
(2),如果不存在,可以通过 Response.Cookies.Add(cookie);将新建的cookie添加到响应的cookie集合中

2,HttpUtility类
这个类处理有关web请求时的url的编码与解码
HttpUtility.UrlEncode(currUrl)编码后的字符串
HttpUtility.UrlDecode(currUrl)解码后的字符串
3 HttpContext类封装了有关http请求的所有信息。
HttpContext.Current.Request获取当前请求的Http

3 url中问号的作用
(1),http://www.xxx.com/Show.asp?id=77&nameid=2905210001&page=1
这个问号可以传递参数
(2), http://www.xxxxx.com/index.html 和 http://www.xxxxx.com/index.html?test123123
后者告诉浏览器这是一个新的url,需要请求新的url(而不是缓存上的)

周二

一,
1,重新学习Form
(1)<form action="Handler1.ashx" method="post" >,action指定数据提交的页面,
当单击提交时,本页面的数据就好提交到Handle1.ashx页面,然后就可以在这个页面处理数据。
添加--新建项--一般处理程序--后缀即.ashx,在public void ProcessRequest(HttpContext context)
中处理即可,参数HttpContext封装了有关http请求的所有信息。
(2)提交方式:在前面的示例代码中,我为form指定了method="post",这个提交方法就决定了浏览器在提交数据时,通过什么方式来传递它们。
如果是【post】,那么表单数据将放在请求体中被发送出去。
如果是【get】,那么表单数据将会追加到查询字符串中,以查询字符串的形式提交到服务端。
建议:表单通常还是以post方式提交比较好,这样可以不破坏URL,况且URL还有长度限制。
(3)数据的编码:控件输入的内容并不是直接发送的, 而是经过一种编码规则来处理的。
目前基本上只会只使用二种编码规则:application/x-www-form-urlencoded 和 multipart/form-data ,
 这二个规则的使用场景简单地说就是:后者在上传文件时使用,其它情形则使用前者(默认)。
其实form还有个enctype属性,用它就可以指定编码规则,除非我们要上传文件了,那么此时必须设置enctype="multipart/form-data"
(4)对于多个提交按钮,只需要判断指定的name是否存在
// 注意:我们只要判断指定的name是否存在就可以了。        
if( string.IsNullOrEmpty(context.Request.Form["btnSave"]) == false ) {
    // 保存的处理逻辑
}
if( string.IsNullOrEmpty(context.Request.Form["btnQuery"]) == false ) {
    // 查询的处理逻辑
}
(5)HttpPostedFile file1 = context.Request.Files["file1"];//得到file1文件
 file1.SaveAs(context.Server.MapPath("~/") + file1.FileName);//保存文件
注意:Server.MapPath("~")  //表示当前应用级程序的目录;如果写的虚拟目录不存在,报错。
(6)string.Join(separator,value)用法,如果 separator 为“,”
且 value 的元素为“apple”、“orange”、“grape”和“pear”,则 Join(separator, value) 返回“apple, orange, grape, pear”。
(7)from查询字符串
int[] numbers = { 5, 4, 1, 3, 9, 8, 6, 7, 2, 0 };
var lowNums = from num in numbers   //num是代表,numbers是数据源
            where num < 5        //where是条件
            select num;
foreach (int i in lowNums)
{
     Console.Write(i + " ");
}

二,文件下载
1, Http 协议中有专门的指令来告知浏览器, 本次响应的是一个需要下载的文件. 格式如下:
Content-Disposition: attachment;filename=filename.ext
以上指令即标记此次响应流是附件,且附件文件名为 filename.ext
注意:
(1): 中文文件名需要进行URLEncode编码, 否则在IE 6 下会提示是”无法识别的文件”.

但经实际测试,在Chrome下不进行URLEncode编码, 也能正常显示.

(2): 文件名不能有空格, 否则也会被认为是”无法识别的文件”.

(3): [ASP.Net中] 向响应流中添加该指令必须使用 response.AddHeader() 函数; 使用

response.Header.Add() 则会报错.

周三

一,asp.net前台与后台互相访问
1,后台访问前台html控件可以如下访问:
(1)首先html控件中要加runat="server",否则无法访问
(2)然后控件要放到 <form runat ="server" >  </form>中,否则无法访问
(3)在form内可以添加这个控件  <input type ="text" id ="tbName" runat = "server" />
(4)后台如下访问:string s1 = Request.Form["tbName"] ;这就得到了对应的值

2,后台访问前台web服务器控件也可以使用上面的方法,另外还可以如下访问
(1)同样放到 form标签中
服务器控件<asp:TextBox ID="tbName" runat="server" Text ="wangjinhe"></asp:TextBox>
(2)查找控件TextBox tb1 = (TextBox)this.FindControl("tbName");
(3)得到控件文本:string s2 = tb1.Text;

周四

昨日总结:由于没有及时和经理沟通,导致搜集了一大堆无用的信息,结果是今天还要重做。
经理布置过任务以后,我应该先做出来一个样品,让经理看看是否满足条件然后继续做。

2,学习js.有关显示时间,设置cookie。

                      周五

研究entity framework,eblog,discuss!,ioc,
1,entity framework
(1)orm(object relational mapping)(关系对象映射)
(2)自动属性
public int name {get;set;}
(3)对象初始化
User user= new User { Id=1,Name="wang",Age=23 };
(4)集合初始化
List<int> num=new List<int>{0,1,2,3,4,5,6};
(5)匿名类,匿名是var是不确定类型
var p1=new { Id=1,Name="wang",Age=23};
(6)扩展方法,对某个类进行扩展,增加方法,参数前有this
public static bool IsValidEmailAddress(this string s)
(7)lambda表达式  (参数列表)>=(表达式)或(语句快)

2 Entity Framework的核心edm
(1)edm(entity data model)实体数据模型
三部分:概念模型(csdl);映射(msl);存储模型(ssdl)

              周六
安装sql2005成功,安装vs2010,安装错误时查看错误报告,找错误码,然后搜索。

周日

跑步到中医院二附属医院,郑州轻工业,某一基督教堂,后来走到了新家园地下书城,然后看了一天的书,有关百度创业的《李彦宏如是说》。感觉看些这方面的书很受益。

 

 

 

 

Tags:

本文暂时没有评论,来添加一个吧(●'◡'●)

欢迎 发表评论:

最近发表
标签列表