当前位置:编程学习 > C#/ASP.NET >>

本人初学,有几个简单.Net的问题请教

1、关于类:
public class product:dataset
{
   ...
   public productdata()
   {
      Builddatatbles();
   }
}
如上productdata函数中就只有一个Builddatatbles();为什么不直接写在class product中,而需要单独出来构造一个函数?
即为什么不可以简单写为:
public class product:dataset
{
     .....    
     Builddatatbles();
   
}
许多这样同类似的类构造,相不明白,请大侠开个窍。

2、.Net数据集中经常出现
cmd.commandType=commandType.Text
后面的commandType.Text不就是cmd自身的commandType属性吗?是存储过程就是存储过程,是SQL就是SQL,为什么还需要赋值? --------------------编程问答-------------------- 我的一点看法,不知道是否正确啊!
1.构造函数是在类实例化的时候即执行,赋给类里面的变量以初值,而这些变量一般是该类里面的方法所要用到的,可以方便后面的调用。
如果你的那个方法单独写出来的话,在类实例化之后还要在调用那个方法一次。。

2.这一个在我看来不是必须要写的。。
SqlCommand cmd=new SqlCommand("select * from tb",connection);
cmd.CommandType=CommandType.Text;
这个的话后一句可以不写。。
而如果是存储过程的话就必须写了~~~
SqlCommand cmd=new SqlCommand("InsertPerson",connection);
cmd.CommandType=CommandType.Procedure;

基础知识不怎么牢靠,有错误还请见谅!~~ --------------------编程问答-------------------- 第2点我同意 --------------------编程问答-------------------- up --------------------编程问答-------------------- 1,之所以是写在构造函数中,是因为这里的代码是在实例化(用new关键字)时自动执行的,比如:
product myproduct=new product();
实际上这句话完了你构造函数也就被执行了。当然你可以不写在构造函数中,但是必须手动去调用你需要的方法:
product myproduct=new product();
myproduct.Builddatatbles();
具体写哪里,看自己的需要把,一般构造函数是用于初始化对象的成员变量。

--------------------编程问答-------------------- 谢谢,有大侠指点真好,自己再啄磨啄磨 --------------------编程问答--------------------

public product() 

    Builddatatbles(); 


这个才是构造函数,写在这里是为了实例化的时候自动调用Builddatatbles方法,不用你再去显示调用了,如同楼上学的,一般做初始化成员变量用。 --------------------编程问答-------------------- 构造函数就是在创建实例的时候就执行了,而非构造函数需要实例调用才是.

看看构造函数把 --------------------编程问答-------------------- cmd.commandType=commandType.Text 
解释类型的 如果是存储过程就声明它是存储过程cmd.CommandType=CommandType.Procedure; 前面一句.net执行的是一般的sql后面的一个是告诉.net执行的是一个存储过程
--------------------编程问答-------------------- 同意2楼的观点 --------------------编程问答-------------------- 进来学习 --------------------编程问答-------------------- 领会一把!!! --------------------编程问答-------------------- 定2楼 --------------------编程问答-------------------- 二楼说的很对
cmd.commandType默认为commandType.Text所以当cmd.commandtext为sql语句是无需指定,但是执行存储过程时就要制定cmd.CommandType=CommandType.Procedure; --------------------编程问答-------------------- 顶1
引用 13 楼 zhjinzhao 的回复:
二楼说的很对
cmd.commandType默认为commandType.Text所以当cmd.commandtext为sql语句是无需指定,但是执行存储过程时就要制定cmd.CommandType=CommandType.Procedure;
--------------------编程问答-------------------- 初学者啊? 啊 我连这些都不了解啊。 --------------------编程问答-------------------- 问题果然够初学

两个问题都问得有点...说不出来的感觉

问题1, public productdata() 
  { 
      Builddatatbles(); 
  } 

这没什么,只是在productdata方法中调用了Builddatatbles方法,至于为什么不写在类中,这是业务逻辑问题,可能说得比较抽象

问题2,我都不知道该怎么回答你,这就是一个普通的属性赋值,属性的类型是枚举,没什么其它的 --------------------编程问答-------------------- 同意2楼观点。 另外15#的头像太酷了。哈哈
补充:.NET技术 ,  ASP.NET
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,