ado属性扩展

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using 属性扩展.Model;
using 属性扩展.DataOperation;

namespace 属性扩展
{
    class Program
    {
        static void Main(string[] args)
        {
            List<Score> list = new ScoreData().SelectAll();

            foreach (Score s in list)
            {
                Console.WriteLine(s.Sno + "  " + s.Sname + "  " + s.Ssex + "  " + s.Cno + "  " + s.CnoName + "  " + s.Degree);
            }

            Console.ReadKey();
        }
    }
}
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using 属性扩展.Model;
using System.Data.SqlClient;

namespace 属性扩展.DataOperation
{
    public class ScoreData
    {
        SqlConnection conn = null;
        SqlCommand cmd = null;
        public ScoreData()
        {
            conn = new SqlConnection("server=.;database=Data05152;user=sa;pwd=123");
            cmd = conn.CreateCommand();
        }

        public List<Score> SelectAll()
        {
            List<Score> list = new List<Score>();
            cmd.CommandText = "select *from score";

            conn.Open();
            SqlDataReader dr = cmd.ExecuteReader();

            if (dr.HasRows)
            {
                while (dr.Read())
                {
                    Score s = new Score();
                    s.Cno = dr["cno"].ToString();
                    s.Sno = Convert.ToInt32(dr["sno"]);
                    s.Degree = Convert.ToDecimal(dr["degree"]);
                    list.Add(s);
                }
            }

            conn.Close();
            return list;
        }

    }
}
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Data.SqlClient;

namespace 属性扩展.Model
{
    public class Score
    {
        private int _Sno;

        public int Sno
        {
            get { return _Sno; }
            set { _Sno = value; }
        }
        private string _Cno;

        public string Cno
        {
            get { return _Cno; }
            set { _Cno = value; }
        }

        public string CnoName
        {
            get
            {
                string n = "";
                SqlConnection conn = new SqlConnection("server=.;database=Data05152;user=sa;pwd=123");
                SqlCommand cmd = conn.CreateCommand();
                cmd.CommandText = "select *from course where cno = @cno";
                cmd.Parameters.Clear();
                cmd.Parameters.Add("@cno", _Cno);
                conn.Open();
                SqlDataReader dr = cmd.ExecuteReader();

                if (dr.HasRows)
                {
                    while (dr.Read())
                    {
                        n = dr["cname"].ToString();
                    }
                }

                conn.Close();
                return n;
            }
        }

        private decimal _Degree;

        public decimal Degree
        {
            get { return _Degree; }
            set { _Degree = value; }
        }

        public string Sname
        {
            get
            {
                string n = "";
                SqlConnection conn = new SqlConnection("server=.;database=Data05152;user=sa;pwd=123");
                SqlCommand cmd = conn.CreateCommand();
                cmd.CommandText = "select *from student where sno = @sno";
                cmd.Parameters.Clear();
                cmd.Parameters.Add("@sno", _Sno);
                conn.Open();
                SqlDataReader dr = cmd.ExecuteReader();

                if (dr.HasRows)
                {
                    while (dr.Read())
                    {
                        n = dr["sname"].ToString();
                    }
                }

                conn.Close();
                return n;

            }
        }

        public string Ssex
        {
            get
            {
                string n = "";
                SqlConnection conn = new SqlConnection("server=.;database=Data05152;user=sa;pwd=123");
                SqlCommand cmd = conn.CreateCommand();
                cmd.CommandText = "select *from student where sno = @sno";
                cmd.Parameters.Clear();
                cmd.Parameters.Add("@sno", _Sno);
                conn.Open();
                SqlDataReader dr = cmd.ExecuteReader();

                if (dr.HasRows)
                {
                    while (dr.Read())
                    {
                        n = dr["ssex"].ToString();
                    }
                }

                conn.Close();
                return n;
            }
        }
    }
}
时间: 2024-10-31 18:13:15

ado属性扩展的相关文章

ADO.NET(查询、属性扩展)

一.ADO.NET 融合面向对象的查询语句 1.只查询一条数据 //数据访问中的select方法 public stu select(string xuehao) { stu s = null; cmd.CommandText = "select *from stu where [email protected]"; cmd.Parameters.Clear(); cmd.Parameters.Add("@a", xuehao); conn.Open(); SqlD

ADO.Net属性扩展

属性扩展 大体意思:有外键关系时将代号化信息处理成原始文字 如:Info表中的民族列显示的是民族代号处理成Nation表中的民族名称 需要在Info类里面扩展一个显示nation名称的属性 using System; using System.Collections.Generic; using System.Data.SqlClient; using System.Linq; using System.Text; namespace 实体类_数据访问类.App_Code { public cl

ADO数据库访问类查询、属性扩展

1 数据库访问类查询 (1)查询一条 有参数:查询这条信息的主键: 有返回值:返回值是一个实体类: dr.read();执行一遍,读取这行信息并放进users类型中. ///返回users实体类类型 public users chayi(string name) { users u = null; com.CommandText = "select *from users where [email protected]"; com.Parameters.Clear(); com.Par

ADO.NET 数据访问类查询、属性扩展

今天,我首先在之前所做的人员管理系统的基础上,利用数据访问类进行了所有人员信息的查询. 主程序代码: List<Users> Ulist = new UsersData().Select(); if (Ulist.Count > 0)//判断是否包含语句 { foreach (Users u1 in Ulist)//遍历 { Console.WriteLine(u1.UserName + " " + u1.PassWord + " " + u1.N

数据模型和数据访问类以及属性扩展和泛型集合

数据模型: 数据模型就是将一个表中一行的所有属性利用封装写到一个类里面,将数据表中的行数据组成一个同样结构的对象,方便使用. 1 public class Car 2 { 3 SqlConnection conn = null; 4 SqlCommand com = null; 5 public Car() 6 { 7 conn = new SqlConnection("server=.;database=ADOlianxi0425;user=sa;pwd=123;"); 8 com

实体类、数据访问类、属性扩展

using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace 实体类_数据访问类.App_Code { public class Users { private string _username; //封装 /// <summary> /// 用户名 /// </summary> public

ADO.NET 扩展

ADO.NET 成功地提供了一组基类和接口,为通过其他类和接口访问关系型数据库提供了一种选择,因此,从 F# 中访问大多数关系型数据库不用太多的努力.我们已经讨论了大部分这样的类,或者至少这些类实现了它们打算提供的功能.表 9-2 汇总了其中的关键类. 表 9-2 ADO.NET 中的关键类 类 描述 System.Data.Common .DbConnection 这个类表示对关系型数据库特定实例的连接,使用从它派生的类,指定想对哪个数据库执行执行查询. System.Data.Common

2017-4-21 字符串攻击 防御 实体类 数据访问类 属性扩展 三层架构开发

(一)防止sql数据库字符串注入攻击: 1.字符串注入攻击实在填写内容是,插入的sql语句,对数据库进行的操作 数据库的攻击就是插入新的sql语句,并对后面的语句进行注销:');update Students set Sname='';-- 2.防止字符串注入攻击: cmd.CommandText = "update Student set Sname = @a",   ----  用占位符进行占位,这样在攻击的时候就会吧攻击的内容当成sql语句内容直接插入到数据库 cmd.Param

YbSoftwareFactory 代码生成插件【十九】:实体类配合数据库表字段进行属性扩展的小技巧

实体类通常需要和数据库表进行了ORM映射,当你需要添加新的属性时,往往同时也需要在数据库中添加相应的字段并配置好映射关系,同时可能还需对数据访问组件进行重新编译和部署才能有效.而当你开始设计一个通用数据访问组件后,因为项目需求的不同和需求的不断变化演变,很难不能保证不会再添加额外的属性和字段.特别是项目部署运行后,添加一个属性和字段带来的额外维护的工作量可能要远远超过对代码进行调整的工作量.本文提供了属性字段扩展的一种思路,在满足核心字段可通过实体类强类型进行访问的同时,还可通过C# 4.0提供