net学习心得
“keiiku”通过精心收集,向本站投稿了6篇net学习心得,下面是小编为大家整理后的net学习心得,供大家参考借鉴,希望可以帮助到有需要的朋友。
篇1:.net学习心得
.net学习心得
1.反射:反射是.net中的重要机制,通过反射可以在运行时获得.net中每一个类型,包括类、结构、委托和枚举的成员,包括方法、属性、事件,以及构造函数等,有了反射,既可以对每一个类型了如指掌。
下面来演示一下反射的实例
(1)新建一个类库项目。在解决方案上单击右键选择添加“新建项目”,在弹出来的框中选择“类库”,在下面名字栏中输入classlib。然后删除class1类,新添加一个类“classperson”,添加如下代码:
namespace classlib
{
public class classperson
{
public classperson:this(null)
{
}
public classperson(string strname)
{
name = strname;
}
private string name;
private string sex;
private int age;
public string name
{
get { return name; }
set { name = value; }
}
public string sex
{
get { return sex; }
set { sex = value; }
}
public int age
{
get { return age; }
set { age = value; }
}
public void sayhello()
{
if (null==name)
console.writeline(“hello world”);
else
console.writeline(“hello,” + name);
}
}
}
添加完之后编译生成一下,就会在这个类库项目中的bindebug中有一个classlib.dll文件,
然后添加一个控制台应用程序。引入system.reflaction的'命名空间。添加的代码如下:
using system;
using system.collections.generic;
using system.linq;
using system.text;
using system.reflection;//添加反射的命名空间
namespace consoleapplication4
{
public class program
{
static void main(string[] args)
{
console.writeline(“列出程序集中的所有类型”);
assembly ass = assembly.loadfrom(“classlib.dll”);
type[] mytype = ass.gettypes();
type classperson = null;
foreach (type p in mytype)
{
console.writeline(p.name);
if (p.name==“classperson”)
{
《1》《2》.net学习心得 相关文章:携手助学培训心得读三字经心得体会小学科学教研员培训心得小学英语听课心得学习师德师风心得体会学习于丹论语心得体会师德学习心得体会乡镇教研员培训班学习心得查看更多>> 学习心得体会篇2:net学习心得
1.反射:反射是.net中的重要机制,通过反射可以在运行时获得.net中每一个类型,包括类、结构、委托和枚举的成员,包括方法、属性、事件,以及构造函数等。有了反射,既可以对每一个类型了如指掌。
下面来演示一下反射的实例
(1)新建一个类库项目。在解决方案上单击右键选择添加“新建项目”,在弹出来的框中选择“类库”,在下面名字栏中输入classlib。然后删除class1类,新添加一个类“classperson”,添加如下代码:
namespace classlib
{
public class classperson
{
public classperson():this(null)
{
}
public classperson(string strname)
{
name = strname;
}
private string name;
private string sex;
private int age;
public string name
{
get { return name; }
set { name = value; }
}
public string sex
{
get { return sex; }
set { sex = value; }
}
public int age
{
get { return age; }
set { age = value; }
}
public void sayhello()
{
if (null==name)
console.writeline(“hello world”);
else
console.writeline(“hello,” + name);
}
}
}
添加完之后编译生成一下,就会在这个类库项目中的.bindebug中有一个classlib.dll文件。然后添加一个控制台应用程序。引入system.reflaction的命名空间。添加的代码如下:
using system;
using system.collections.generic;
using system.linq;
using system.text;
using system.reflection;//添加反射的命名空间
namespace consoleapplication4
{
public class program
{
static void main(string[] args)
{
console.writeline(“列出程序集中的所有类型”);
assembly ass = assembly.loadfrom(“classlib.dll”);
type[] mytype = ass.gettypes();
type classperson = null;
foreach (type p in mytype)
{
console.writeline(p.name);
if (p.name==“classperson”)
{
classperson = p;
}
}
console.writeline(“列出classpersonl类中的所有的方法”);
methodinfo[] md = classperson.getmethods();
foreach(methodinfo m in md)
{
console.writeline(m.name);
}
console.writeline(“实例化classperson类,并调用sayhello方法”);
object obj = activator.createinstance(classperson);
object objname=activator.createinstance(classperson,“飞鹰”);
methodinfo mysayhello = classperson.getmethod(“sayhello”);
mysayhello.invoke(obj, null);//无参数构造函数
mysayhello.invoke(objname, null);//有参构造函数
console.readkey();
}
}
}
运行之后的结果是:
列出程序集中的所有类型
classperson
列出classpersonl类中的所有的方法
get_name
set_name
get_sex
set_sex
get_age
set_age
sayhello
tostring
equals
gethashcode
gettype
实例化classperson类,并调用sayhello方法
hello world
hello,飞鹰
2.using的作用
(1)引入命名空间,如:using system。
(2)using别名。
格式:using 别名=包括详细命名空间信息的具体的类型
例如:在两个命名空间(namespace1,namespace2)里各有一个myclass类,这时可以这样引入命名空间,
using aclass=namespace1.myclass;
using bclass=namespace2.myclass;
实例化时:
aclass my1=new aclass;
bclass my2=new bclass;
(3)using定义范围
即时释放资源,在范围结束时处理对象。例如:
using(class1 cls1=new class1())
{
}
在这个代码段结束时会触发cls1的dispose方法释放资源。
篇3:NET学习心得文集
.NET学习心得
我是从大三开始接触Microsoft.NET的,大三上学期我们有一门课是C# AND ADO.NET DEVELOPMENT。虽然我们当时用的C#程序的开发平台是.NET,但是我对.NET却了解粗浅,对c#这门编程语言和.NET的关系不太清楚。随着后来学了另一门.NET 的课程SOA, CLOUD COMPUTING AND SHAREPOINT PROGRAMMING WITH MICROSOFT .NET,我才对.NET这一门技术有了深入的理解。在这里,我想说一说我个人对.NET的理解,希望能帮助大家更好的学习Microsoft.NET。
为了说明Microsoft.NET是干什么的,首先要说一下Microsoft.NET技术出现的原因。
从用户的需求和开发人员的需求两个角度来说:
一方面,用户拥有一套设备,例如 PC、移动电话、笔记本。这些设备可能放在办公室或者家里。当用户需要在办公室的某台设备或移动电话上访问家中存储的的信息(电子邮件或其他任何信息)时,问题就出现了,因为所有这些设备都将数据存储在不同的位置。用户认为需要一种个人信息空间,通过它,用户可以在家中或途中访问存储在办公室的信息,或者以相同方式从任何位置访问存储在家中的信息。
另一方面,开发人员没有足够的工具来开发用户所需的解决方案。 结果是,站点虽然颇具吸引力却缺乏有效性和实用性。此外,需要为不同的设备开发不同的代码,这也使开发人员颇感为难。如果开发人员拥有某些工具,使他能够只编写一次代码,并可在多种设备中部署该代码,将可以提高开发人员的工作效率。这是开发人员的需求。
除了上面的两种需求外,还伴随以下三种技术的转变:
1.internet计算方案的转变,由最初的集中式计算发展为客户端-服务器计算再到分布式计算,这也是当前使用的计算形式。在分布式计算中,智能终端互相通讯,并使用彼此的处理能力完成部分作业。在这种形式中,计算机通过网络互相访问。
2.Internet 的转变即Web 站点现在变成了“组合体”,而不是从前的“孤岛”,使得计算和通讯结合在一起。
3.应用程序开发的转变使软件成为用户可以预定的服务。此外,应用程序现在可以由任何人在任何位置使用。
因此, Microsoft.NET 旨在解决上面的两种需求和促进上述三个方面的技术演变的实现:
.NET 是Microsoft XML Web服务平台,Web服务是.NET的核心技术。它以 Internet 为中心,即组件位于彼此之间被 Internet “云”分隔的系统上。组件需要通过 Internet 进行访问。将软件用作服务即软件位于远程计算机上,可以通过 Internet 访问软件所提供的功能。在此方案中,应用程序(也称“Web 服务”)就是我们在前面所说的组件,只是在这里它们公开了自身的功能,开发人员可以在自己的应用程序中使用这些功能。这与调用 API 相同;这种情况下,它们是 Web API。将这种情况描述为“Web 上的组件编程”很合适。通过Microsoft .NET平台,可以将用户数据存放到网络上,随时随地地通过与 .NET 兼容的任何设备访问该数据。以这种模式创建的应用程序可以通过任何浏览器在任何设备上进行访问。这种应用程序可以最充分且最优地利用 Internet 的功能。
接下来说一下Microsoft.NET 的主要结构:
Microsoft.NET 主要由三个组件构成:
1.Microsoft.NET 产品和服务,如 MSN.NET、Visual Studio.NET、Office.NET。
2.由 Microsoft 合作伙伴开发且在 .NET平台上的第三方网络服务。
3. Microsoft.NET平台本身。构建包括 .NET 设备软件、.NET 基础结构和工具、以及其他组件。
Microsoft.NET平台是非常基本或核心的部分,是实现所有应用程序的基础。另一方面,Microsoft.NET 产品和服务提供了 Visual Studio.NET 和 Office 等工具,这些工具可以使用该平台,并可以为应用程序添加更强的功能。第三方服务与前面提到的服务相似,只是这些服务是由合作伙伴和开发人员提供的,而不是由 Microsoft 本身提供的。
以上这些是我个人对Microsoft.NET的理解和总结,虽然不是很全面,但是希望它对我们学习Microsoft.NET多少能有些帮助。
篇4:NET学习心得文集
.net学习心得
1.反射:反射是.net中的重要机制,通过反射可以在运行时获得.net中每一个类型,包括类、结构、委托和枚举的成员,包括方法、属性、事件,以及构造函数等。有了反射,既可以对每一个类型了如指掌。
下面来演示一下反射的实例
(1)新建一个类库项目。在解决方案上单击右键选择添加“新建项目”,在弹出来的框中选择“类库”,在下面名字栏中输入classlib。然后删除class1类,新添加一个类“classperson”,添加如下代码:
namespace classlib
{
public class classperson
{
public classperson:this(null)
{
}
public classperson(string strname)
{
name = strname;
}
private string name;
private string sex;
private int age;
public string name
{
get { return name; }
set { name = value; }
}
public string sex
{
get { return sex; }
set { sex = value; }
}
public int age
{
get { return age; }
set { age = value; }
}
public void sayhello()
{
if (null==name)
console.writeline(“hello world”);
else
console.writeline(“hello,” + name);
}
}
}
添加完之后编译生成一下,就会在这个类库项目中的bindebug中有一个classlib.dll文件。然后添加一个控制台应用程序。引入system.reflaction的命名空间。添加的代码如下:
using system;
using system.collections.generic;
using system.linq;
篇5:NET学习心得文集
《成绩管理系统》C#项目开发总结 姓名:史建军学号:P111713266班级:11级软件(2)班
一、心得体会
学生成绩管理系统是一功能十分強大的管理系统,它集各种功用于一身,可以完成教学中的各种操作,如对学生的成绩的添加.删除等。学生成绩管理系统功能大,
程序编写也十分复杂,工作量很大,编写一定要认真。一个小小的失误都可能使程序出现大的漏洞。
建立学生成绩管理系统,采用计算机对学生成绩进行管理,进一步提高办学效益和现代化水平。帮助广大教师提高工作效率,实现学生成绩信息管理工作流程的系统化、规范化和自动化。 我们这次完成学生成绩管理系统分三步.
(1)是对要写成的学生成绩管理系统做全面的分析,即对学生成绩管理系统要使用的编写方法,管理功用,运行方式进行分析,并作出明确的解决方案.针对这次的学生成绩管理系统,它的流程是:以老师和学生两种方式进入,要有密码认证.学生进入系统在能查看此学生的各科目的成绩,平均分,各科最高分和总分.老师进入系统也能查看各位学生的成绩,并能添加,删除学生和学生成绩,对学生成绩进行总分,平均分的运算.
(2)是程序的编写.由于学生成绩管理系统的功能十分強大,程序的编写也十分的复杂,所以我们四人一组,每人完成一部分程序.程序的
编写是一项困难的任务,完成此程序必需运用书中的大部分知识,而且要有清晰的思路,有较強的语言组织能力.由于四人各完成一部分,所以最后四部分程序要能衔接得十分完整,所以四个人要在编写自己的程序的基础上考虑其他人的程序结构.编写程序就是一项十分困难的事,所以一定要细心,不能有一丝的马虎,否则会前功尽弃.
(3)是程序的检查和系统的`调用.程序写完后并不能保证它一定能运行,所以要对它进行调试,发现其中的弊端,并作出相应的修改,以完善程序,使其逻辑性,运算能力都符合题目要求,使学生成绩管理系统的运行
二、项目开发总结
开发工具选择
本系统后台数据库采用Microsoft SQL Server 数据库,该数据库系统在安全性、准确性和运行速度方面有绝对的优势,并且处理数据量大,效率高;前台采用Microsoft 公司的Visual Studio 作为主要开发工具,可与SQL Server 数据库无缝链接。
定义
Visual C#——C#是微软开发的一种面向对象的编程语言,是微软.NET开发环境的重要组成部分。而Microsoft Visual C# 2005是微软开发的C#编程集成开发环境(同种产品还有Borland公司的C# Builder),它是为生成在 .NET Framework 上运行的多种应用程序而
设计的。
产品
最终制成的产品,包括:
a. 程序系统中包括学生成绩查询模块,教师成绩管理模块,管理员模块,学生成绩查询时在账号及学号进入界面后能够对其的选修课与必修课成绩查询,但是不能修改,可以对自己的密码进行修改。教师可以上传成绩。管理员可以对教师信息,学生信息,课程信息进行修改与添加。但是不能对其成绩进行改变。他们数据时建立了表单,存放在数据库中,通过关键字与外关键字使他们产生联系。最终存取与提取数据。
b. 学生成绩管理系统,运行,教师登录界面是教师号与初始密码111111,学生是用户名是学号,初始密码是111111。 c. 建立的数据库database。在运行该系统式要配置一定的虚拟服务器。
主要功能和性能
学生成绩查询模块:学生成绩查询时在账号及学号进入界面后能够对其的选修课与必修课成绩查询,但是不能修改,可以对自己的密码进行修改。
教师成绩管理模块:教师可以上传成绩,对自己的账号密码可以修改。
管理员模块:管理员可以对教师信息,学生信息,课程信息进行修改与添加。但是不能对其成绩进行改变。
本系统基本达到我们预设的全部功能,并希望在以后的使用中逐渐完善。
出错原因的分析
给出对于开发中出现的错误的原因分析。团队的沟通在开始项目前没有做好协商,而且以前编程太少,对程序的驾驭能力还够强。以及对asp.net的网页编程还不太熟。
经验与教训
经过这次开发,我们尽力了从需求分析到成品发布的全部过程。从中我们认识到,要开发一个软件产品,必须对它所有涉及到的各个方面都要有所了解。关键地方必须熟悉。作为设计者的系统分析阶段,必须对不同模块的联系,工作量有正确的认识才能合理的分配任务。管理者要时刻保持清醒,要有合理的进度和质量的控制,才能保证按时按量的完成任务。这次最大的教训是,对进度的掌握不是很好,整个项目的进度没有一定的节奏,忽快忽慢的。幸好最后按时完成了任务。管理者的头脑不清楚,就会导致整个团队走很多的弯路。所以一个领导者是非常重要的。项目是要在过硬的技术基础上有严格的管理,才能确保工程的质量与数量 同时得到满意的效果。
篇6:.net面试题精选
6.描述一下C#中索引器的实现过程,是否只能根据数字进行索引?(索引器是对属性的封装,具体查看msdn)
答:不是。可以用任意类型。
15.什么是装箱和拆箱?
答:从值类型接口转换到引用类型装箱。从引用类型转换到值类型拆箱。
7.什么是受管制(托管)的代码?
答:
托管代码是运行.NET 公共语言运行时CLR的代码
unsafe:非托管代码。不经过CLR运行。程序员自行分配和释放内存空间
8.什么是Code-Behind技术?
答:代码后置。
9.在.net中,配件的意思是?
答:程序集。(中间语言,源数据,资源,装配清单)
10. 简述 private、 protected、 public、 internal 修饰符的访问权限。
答 . private : 私有成员, 在类的内部才可以访问。
protected : 保护成员,该类内部和继承类中可以访问。
public : 公共成员,完全公开,没有访问限制。
internal: 在同一命名空间内可以访问。
11.列举ASP.NET 页面之间传递值的几种方式。
答. 1.使用QueryString, 如....?id=1; response. Redirect()....
2.使用Session变量
3.使用Server.Transfer
4.使用Application
5.使用Cache
6使用HttpContext的Item属性
7.使用文件
8.使用数据库
9.使用Cookie
【net学习心得】相关文章:
4.学习心得
9.社区工作学习心得
10.团校学习心得






文档为doc格式