ADO.NET 【属性扩展】性别、年龄、编号
几种属性扩展的方式
1、性别属性扩展
private bool _Sex; //成员变量 public bool Sex // 属性
{
get { return _Sex; }
set { _Sex = value; }
}
public string SexStr //扩展的属性
{
get { return _Sex ? "男" : "女"; }
}
2、年龄与生日日期属性扩展
private DateTime _Birthday; //成员变量 public DateTime Birthday //属性
{
get { return _Birthday; }
set { _Birthday = value; }
}
public string BirthdayStr //扩展属性 用xx年xx月xx日
{
get { return _Birthday.ToString("yyyy年MM月dd日"); }
}
public int Age //扩展的属性 年龄
{
get { return DateTime.Now.Year - _Birthday.Year; }
}
3、根据编号取相应的名称
private string _Nation; //成员变量 public string Nation //属性
{
get { return _Nation; }
set { _Nation = value; }
}
public string NationName //扩展属性
{
get
{
return new UserNationData().SelectNationName(_Nation);
} //调用方法
}
using System;
using System.Collections.Generic;
using System.Data.SqlClient;
using System.Linq;
using System.Text;
namespace ConsoleApplication1.App_Code
{
public class UserNationData
{
SqlConnection conn;
SqlCommand cmd;
public UserNationData()
{
conn = new SqlConnection("server=.;database=Data0216;user=sa;pwd=123");
cmd = conn.CreateCommand();
}
public string SelectNationName(string ncode)
{
string end = "<暂无>";
cmd.CommandText = "select *from UserNation where NationCode = @a";
cmd.Parameters.Clear();
cmd.Parameters.AddWithValue("@a", ncode);
try
{
conn.Open();
SqlDataReader dr = cmd.ExecuteReader();
if (dr.HasRows)
{
dr.Read();
end = dr["NationName"].ToString();
}
}
catch { }
finally { conn.Close(); }
return end;
}
}
}
补充
1.通配符的使用,在ado.net中查询某个模糊数据
例:查询出汽车表中名字到宝马的汽车,(数据库连接代码)
public List<Users> select(string name)
{
List<Users> list = new List<Users>();
cmd.CommandText = "select * from Car where name like @a";
cmd.Parameters.Clear();
cmd.Parameters.AddWithValue("@a",'%'+name+'%'); conn.Open();
SqlDataReader dr = cmd.ExecuteReader();
while (dr.Read())
{
Users u = new Users();
u.Name = dr["name"].ToString();
list.Add(u);
}
conn.Close(); return list;
}
2.Parameters 集合是属于数据库操作类的,作用是防止字符串注入攻击
数据库操作类 SqlCommand cmd;
数据库连接类 SqlConnection conn;
3.泛型集合定义:不固定长度,固定数据类型
4.类的构造函数在什么情况下会被调用:实例化对象时
调用方法是:构造函数已经使用完毕
5.子类可以继承父类中的所有public方法和属性
虚方法不一定要重写,但是抽象类一定要重写
ADO.NET 【属性扩展】性别、年龄、编号的更多相关文章
- ADO.Net属性扩展
属性扩展 大体意思:有外键关系时将代号化信息处理成原始文字 如:Info表中的民族列显示的是民族代号处理成Nation表中的民族名称 需要在Info类里面扩展一个显示nation名称的属性 using ...
- 【2017-04-21】Ado.Nte属性扩展
通过对数据库表的封装,对该表的属性进行扩展. 1.例如:表中的性别是bool类,要实现显示给用户看的为“男.女” 2.通过表中的生日datetime类,来实现显示给用户看的年月日,自动计算年龄. 3. ...
- ado.net 属性扩展 综合练习
实现数据查询,添加,删除,修改各项功能 业务逻辑层: using System; using System.Collections.Generic; using System.Linq; using ...
- ADO SQL属性扩展————多表组合成新的更完整的表
create database guoji--建立数据库 go use guoji go create table xinxi--建立表一 ( name ), minzu ) ) '); '); ') ...
- ADO.NET(查询、属性扩展)
一.ADO.NET 融合面向对象的查询语句 1.只查询一条数据 //数据访问中的select方法 public stu select(string xuehao) { stu s = null; cm ...
- ADO.NET 数据访问类查询、属性扩展
今天,我首先在之前所做的人员管理系统的基础上,利用数据访问类进行了所有人员信息的查询. 主程序代码: List<Users> Ulist = new UsersData().Select( ...
- C#-ado.net-属性扩展
属性扩展 是封装好的类中添加更多属性,此方法可以添加更多的数据运算方法,更灵活便捷 上一篇中介绍的是实体类和数据访问类,实体类封装的内容如下: 执行查询语句后,结果如下: 我们可以看到,性别显示的是t ...
- C#-WebForm-LinQ(一)-LinQ:语言集成查询(Language Integrated Query)-增删改查、属性扩展
LinQ-语言集成查询(Language Integrated Query) 高集成化的数据库访问技术 LINQ 2 SQL 实际是将数据库的表映射成程序中的类 会把数据库的表名原封不动的变成类名 数 ...
- YbSoftwareFactory 代码生成插件【十九】:实体类配合数据库表字段进行属性扩展的小技巧
实体类通常需要和数据库表进行了ORM映射,当你需要添加新的属性时,往往同时也需要在数据库中添加相应的字段并配置好映射关系,同时可能还需对数据访问组件进行重新编译和部署才能有效.而当你开始设计一个通用数 ...
随机推荐
- Git的一些资源链接
@import url(http://i.cnblogs.com/Load.ashx?type=style&file=SyntaxHighlighter.css);@import url(/c ...
- [转]据说200G网盘资料
来源:HACK学习呀 2015cracer入侵入门到精通视频教程 点我查看 trf3 一笔√带过入侵教程 点我查看 ypan [复仇者]新手入门系列(7套) 点我查看 g1tb 菜鸟入门,做的确实不错 ...
- Git文件状态
在Git中,文件状态是一个非常重要的概念,不同的状态对应不同的操作.因此,要想熟练掌握Git的用法,需要了解Git的几种文件状态. Git库所在的文件夹中的文件大致有4种状态: Untracked:未 ...
- ASP.NETCore学习记录(一)
ASP.NETCore学习记录(一) asp.net core介绍 Startup.cs ConfigureServices Configure 0. ASP.NETCore 介绍 ASP.N ...
- nginx配置client_body_temp_path
http://wiki.nginx.org/HttpCoreModule 中写道: 这里的client_body_temp_path是制定post上传的$_FILES上传的文件地址 后面的level1 ...
- CentOS 6.7 下 MYSQL 5.7 的安装与配置
安装 #yum源 http://dev.mysql.com/downloads/repo/yum/ #安装 rpm -Uvh http://dev.mysql.com/get/mysql57-comm ...
- 全网最全的Windows下Anaconda2 / Anaconda3里Python语言实现定时发送微信消息给好友或群里(图文详解)
不多说,直接上干货! 缘由: (1)最近看到情侣零点送祝福,感觉还是很浪漫的事情,相信有很多人熬夜为了给爱的人送上零点祝福,但是有时等着等着就睡着了或者时间并不是卡的那么准就有点强迫症了,这是也许程序 ...
- asp.net调用js方法
C#前台js调用后台代码 前台js <script type="text/javascript" language="javascript"> fu ...
- Element ui tree树形控件获取当前节点id和父节点id
低版本Element ui tree树形控件获取当前节点id和父节点id的方法:点击查看 最新版本Element ui tree树形控件获取当前节点id和父节点id教程: 1.找到node_modul ...
- js便签笔记(10) - 分享:json.js源码解读笔记
1. 如何理解“json” 首先应该意识到,json是一种数据转换格式,既然是个“格式”,就是个抽象的东西.它不是js对象,也不是字符串,它只是一种格式,一种规定而已. 这个格式规定了如何将js对象转 ...