LINQ学习笔记 -- 数据库的链接信息存哪了呢

当些日子在聊天时,我又抛出了:语言只是工具,重要的是思想。软件的质量控制并非靠语言,而是靠规范的论调。显然,对方表示质疑。为此,走上了VB.net的学习之路。数据库

LINQ

官方如是说:LINQ to SQL 是.NET Framework 版本 3.5,它提供用于管理关系数据做为对象的运行时基础结构的组件。
可见,它是3.5开始有的新特性,用来管理关系数据的。app

为何要学习LINQ呢?

咱们先看下当前项目的示例代码(以登陆为例):ide

db.connectDB()
        If PasswordTextBox.Text = "" Then
            MsgBox("用户名或密码不能为空!", 48, "提示")
            PasswordTextBox.Focus()
            Exit Sub
        End If

        str = "select f_zuidi,f_renyuan_id,f_jiemian from t_renyuan where f_zuofei=0 and f_xingming='" + CStr(ComboBox2.SelectedValue) + "' and (f_mima='" + PasswordTextBox.Text + "'" + " or  'xxxxx'='" + PasswordTextBox.Text + "')"

        ds = db.readrecord(str)
        If ds.Tables(0).Rows.Count = 0 Then
            PasswordTextBox.Text = ""
            MsgBox("用户名称或密码错误,请从新登陆!", 48, "警告")
            db.closeDB()
            PasswordTextBox.Focus()
            Exit Sub
        Else

过程很简单,先链接数据库,若是密码为空,则提示。不然的话,去进行查库处理。若是没有查看到记录,则报错。不然的话,认为用户登陆成功。工具

但这种代码,咱们认为是没法控制其质量的,缘由就是过多的出现了字符串(请忽略掉其它问题),试想一下。若是有一天数据表的某个字段名变动了(由f_zuifi变动为zuifi),咱们还须要来到这个文件f_zuifi这个字符串,来手动的进行变动。而编译器不会给咱们任何提示。若是仅仅有1个文件还能够,但随着项目的规模的增长,最后数据表字段的变动,就会变得不可控制。visual-studio

如何使用LINQ

之前一直对微软有排斥的心理,主要是因为使用上MAC之后,感受MAC的稳定性真的是作的太好了。当近距离接触了微软之后,才发现其文档的友好性。好比其官方居然还有相关的视频教程:https://docs.microsoft.com/zh...。文档的确够多,够完善。推荐文档:https://docs.microsoft.com/zh...学习

其实官方文档真的说的够完善了,在具体的使用过程当中,在执行 项目 -> 添加组件 时,未找到 LINQ to SQL 类。以时,咱们须要来到工具 -> 获取工具与功能, 并选择单个组件中的LINQ to SQL 工具.ui

clipboard.png

再而后就有了。spa

数据库信息存哪了呢?

在使用LINQ成功的查询后,我开始思索一个问题:当前是开发环境,若是是生产环境的数据库地址、端口、用户名、密码、数据库名称与我配置的不同,我怎么修改呢?因而,查看数据源的代码:.net

Public Sub New()
        MyBase.New(Global.stjl.My.MySettings.Default.testConnectionString, mappingSource)
        OnCreated
    End Sub

发现其使用的是项目的Settings中的值。code

Public ReadOnly Property testConnectionString() As String
            Get
                Return CType(Me("testConnectionString"),String)
            End Get
        End Property

获取的是testConnectionString这个字符串的配置信息。它居然在这:

clipboard.png

clipboard.png

虽然尚未正式的发布过,但相信发布应用后这个值应该很容易修改吧。

结论

这给我了一个新的思路:一些关于项目配置的信息,我是否也应该放到这个文件中而且参考官方的调用方法进行调用呢?

相关文章
相关标签/搜索