【数据库】存储过程在LINQ TO SQL中的应用
数据库操作:
数据库设计如下:
创建存储过程addinfotouser,功能:实现数据的添加:
1 -- ============================================= 2 -- Author: netboy 3 -- Create date: 2012年7月20日10:12:16 4 -- Description: 向T_User表中添加信息 5 -- ============================================= 6 CREATE PROCEDURE addinfotouser 7 @user nvarchar(50), 8 @age int 9 AS 10 BEGIN 11 insert into T_User 12 (UserName ,Age) values (@user,@age) 13 14 END
创建存储过程getallinfofromuser,功能:得到表中所有数据
-- ============================================= -- Author: netboy -- Create date: 2012年7月20日10:15:49 -- Description: 得到user表中的所有数据 -- ============================================= CREATE PROCEDURE getallinfofromuser AS BEGIN select * from T_User END
demo:
新建项目,net小伙用的是winform。界面设计:
右击项目添加新项,选择LINQ to SQL 类:
会出现如下界面(ORM编译器,object relation mapping),
左边是创建类的界面,右边是创建方法的界面;
存储过程就相当于C语言中的方法,所以通过资源管理器把表中的存储过程拖到右边,生成两个方法;然后保存,生成解决方案。
button事件代码:
1 private void button1_Click(object sender, EventArgs e) 2 { 3 useuserDataContext user = new useuserDataContext(); 4 int age = Convert.ToInt32(txbage.Text); 5 user.addinfotouser(txbusername.Text, age); 6 this.dataGridView1.DataSource = user.getallinfofromuser(); 7 }
运行,就可以看到效果了;
linq to sql是一个非常方便的一个技术,核心操作都在数据库中完成,降低了网络流量,减少了客户端的压力。而且只需要编写少数的代码就可以完成功能;