加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > asp.Net > 正文

WPF 一个数据库连接测试的实现

发布时间:2020-12-15 21:11:19 所属栏目:asp.Net 来源:网络整理
导读:要实现的功能效果图如下:因为我们要测试数据是从输入框获得的,所以,我们的连接字符串不是写死在应用程序中的。下面我就详细介绍一下。 ? 首先,我们要找到 项目下——》Properties->Setiings.setting 新建一个连接字符串名称,类型为 string ,重点重点

要实现的功能效果图如下:因为我们要测试数据是从输入框获得的,所以,我们的连接字符串不是写死在应用程序中的。下面我就详细介绍一下。

?

首先,我们要找到 项目下——》Properties->Setiings.setting

新建一个连接字符串名称,类型为 string,重点重点 范围一定要设置为 用户,这样的话我们才可以重写base.在继承的基础上覆盖上次的连接字符串。 如果我们不设置为用户而设置为应用程序获的话,将会不可改变连接字符串。

在EF框架中,我们每new一个 DataContext便会有一个数据库表的映射。它的逻辑是,我们new的时候(此例子 datacontext是?)会执行

( Console.WriteLine(</span><span style="color: #0000ff;"&gt;global</span><span style="color: #000000;"&gt;::DataModal.Properties.Settings.Default.StockManageSystemConnectionString); OnCreated(); } </span><span style="color: #0000ff;"&gt;public</span> StockManageDataContext(<span style="color: #0000ff;"&gt;string</span><span style="color: #000000;"&gt; connection) : </span><span style="color: #0000ff;"&gt;base</span><span style="color: #000000;"&gt;(connection,mappingSource) { OnCreated(); } </span><span style="color: #0000ff;"&gt;public</span><span style="color: #000000;"&gt; StockManageDataContext(System.Data.IDbConnection connection) : </span><span style="color: #0000ff;"&gt;base</span><span style="color: #000000;"&gt;(connection,mappingSource) { OnCreated(); } </span><span style="color: #0000ff;"&gt;public</span> StockManageDataContext(<span style="color: #0000ff;"&gt;string</span><span style="color: #000000;"&gt; connection,System.Data.Linq.Mapping.MappingSource mappingSource) : </span><span style="color: #0000ff;"&gt;base</span><span style="color: #000000;"&gt;(connection,mappingSource) { OnCreated(); } </span><span style="color: #0000ff;"&gt;public</span><span style="color: #000000;"&gt; StockManageDataContext(System.Data.IDbConnection connection,mappingSource) { OnCreated(); }</span></pre>
这个代码中就是可以覆盖的连接字符串,我们只需要更改他就行。

</span><span style="color: #008000;"&gt;//</span><span style="color: #008000;"&gt;获得连接字符串</span> <span style="color: #0000ff;"&gt;string</span> ConnectionString = <span style="color: #800000;"&gt;"</span><span style="color: #800000;"&gt;Data Source=</span><span style="color: #800000;"&gt;"</span> + Server.Text + <span style="color: #800000;"&gt;"</span><span style="color: #800000;"&gt;;Initial Catalog=</span><span style="color: #800000;"&gt;"</span> + Sqlname.Text + <span style="color: #800000;"&gt;"</span><span style="color: #800000;"&gt;;Persist Security Info=True;User ID=</span><span style="color: #800000;"&gt;"</span> + Account.Text + <span style="color: #800000;"&gt;"</span><span style="color: #800000;"&gt;;Password=</span><span style="color: #800000;"&gt;"</span> +<span style="color: #000000;"&gt; Pass.Text; SqlConnection _SqlConnection </span>= <span style="color: #0000ff;"&gt;new</span><span style="color: #000000;"&gt; SqlConnection(ConnectionString); </span><span style="color: #0000ff;"&gt;try</span><span style="color: #000000;"&gt; { _SqlConnection.Open(); SqlCommand sqlcmd </span>=<span style="color: #000000;"&gt; _SqlConnection.CreateCommand(); sqlcmd.CommandText </span>= <span style="color: #800000;"&gt;"</span><span style="color: #800000;"&gt;select top 10 * from ProductInfo;</span><span style="color: #800000;"&gt;"</span><span style="color: #000000;"&gt;; </span><span style="color: #008000;"&gt;//</span><span style="color: #008000;"&gt;如果可以连接成功则 保存数据库连接字符串 </span> DataModal.Properties.Settings.Default.StockManageSystemConnectionString =<span style="color: #000000;"&gt; ConnectionString; DataModal.Properties.Settings.Default.Save();</span><span style="color: #008000;"&gt;//</span><span style="color: #008000;"&gt;使用Save方法保存更改 n</span> MessageBox.Show(<span style="color: #800000;"&gt;"</span><span style="color: #800000;"&gt;测试连接正常</span><span style="color: #800000;"&gt;"</span>,<span style="color: #800000;"&gt;"</span><span style="color: #800000;"&gt;恭喜</span><span style="color: #800000;"&gt;"</span><span style="color: #000000;"&gt;); </span><span style="color: #0000ff;"&gt;return</span> <span style="color: #0000ff;"&gt;true</span><span style="color: #000000;"&gt;; } </span><span style="color: #0000ff;"&gt;catch</span><span style="color: #000000;"&gt; (Exception ex) { MessageBox.Show(</span><span style="color: #800000;"&gt;"</span><span style="color: #800000;"&gt;不能连接数据库,请重新设置</span><span style="color: #800000;"&gt;"</span>,<span style="color: #800000;"&gt;"</span><span style="color: #800000;"&gt;警告</span><span style="color: #800000;"&gt;"</span><span style="color: #000000;"&gt;); </span><span style="color: #0000ff;"&gt;return</span> <span style="color: #0000ff;"&gt;false</span><span style="color: #000000;"&gt;; } </span><span style="color: #0000ff;"&gt;finally</span><span style="color: #000000;"&gt; { _SqlConnection.Close(); } }</span></pre>

这样就可以进行测试了,在每次登陆之前都要验证一遍。

?

还有一个比较人性化的问题,就是用户希望在每次登陆之前都有几个数据库连接默认的值,毕竟大家不愿意去动手输入那么多数据,但是又不可以直接写死在输入框(这样太low),所以,既然之前我们可以给连接字符串赋值,我们也可以获取上次的连接字符串,拆分,然后在窗体初始化时默认加载到窗体输入框嘛。

代码:(根据键值对获得,)

connect =<,> dictionary = connect.Split( [] { },StringSplitOptions.RemoveEmptyEntries).ToDictionary(x => x.Split()[],x => x.Split()[<> test = List<> ( i = ; i < test.Count; i++= test[= test[= test[= test[

?

?



(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读