问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

vb转vb.net编程,遇到的一些问题

发布网友 发布时间:2022-04-29 20:23

我来回答

3个回答

懂视网 时间:2022-04-30 00:44

‘作者:刘文彬 ‘小组: ‘说明:利用函数重载,配置文件读取使得程序更加灵活 ‘创建日期:2015-4-27 ‘版本号:v1.4 ‘************************************************* Imports System.Data Imports System.Data.SqlClient Imports System.Configuration Public Class SQLHelperDAL ‘全局配置:连接字符、定义一个cnn,cmd ‘增删改,有参数/无参数 ‘查,有参数/无参数 ‘全局配置 ‘连接字符串 ‘Dim ConnectionString As String = "Server=BillMYSQL;Database=Charge_System;User ID=sa;Password=" ‘初始化sqlconnection 对象 Dim cnn As New SqlConnection(Configuration.ConfigurationSettings.AppSettings("ConnectionString")) ‘读取配置文件,获得ConnectionString的值 Dim cmd As New SqlCommand #Region "有参增删改ExcuteNoQuery,不返回数据行,返回integer型数据表示受影响的行数。此函数被重载" ‘‘‘ <summary> ‘‘‘ 执行 增删改的数据库操作(有参数版) ‘‘‘ </summary> ‘‘‘ <param name="cmdText"></param>命令的文本 ‘‘‘ <param name="cmdType"></param>命令的类型 ‘‘‘ <param name="sqlParams"></param>要执行的sql语句集,无法确定具体条数 ‘‘‘ <returns></returns>整型值,表示受影响的行数 ‘‘‘ <remarks></remarks> Public Function ExcuteNoQuery(ByVal cmdText As String, ByVal cmdType As CommandType, ByVal sqlParams As SqlParameter()) As Integer ‘逐条将数组sqlParams中的参数添加到Parameters中 cmd.CommandType = cmdType ‘将命令的类型传给commandtype cmd.Connection = cnn ‘为执行连接命令的参数connection赋值 cmd.CommandText = cmdText ‘将sql语句赋值给执行命令的文本commandtext Try cmd.Parameters.Clear() ‘清除参数 ‘如果存在sqlparams参数,则添加到cmd对象中 If Not IsNothing(sqlParams) Then cmd.Parameters.AddRange(sqlParams) End If ‘如果没有打开连接,则打开连接 If cnn.State = ConnectionState.Closed Then cnn.Open() End If Return cmd.ExecuteNonQuery ‘执行操作 Catch ex As Exception Return 0 Finally ConnectionClose(cnn) CommandClose(cmd) End Try End Function #End Region #Region "无参增删改操作,不返回数据行,返回Integer类型数据表示受影响行数重载ExcuteNoQuery" ‘‘‘ <summary> ‘‘‘ 执行返回受影响的行数,此处是重载ExcuteNoQuery方法。 ‘‘‘ </summary> ‘‘‘ <param name="cmdText"></param>要执行的sql文本命令,或者存储过程名 ‘‘‘ <param name="cmdType"></param>要执行的命令的类型,sql文本命令或者存储过程名 ‘‘‘ <returns></returns>Integer类型的数,表示受影响的行数 ‘‘‘ <remarks></remarks> Public Function ExuteNoQuery(ByVal cmdText As String, ByVal cmdType As CommandType) As Integer Return ExcuteNoQuery(cmdText, cmdType, Nothing) End Function #End Region #Region "无参版,返回第一行第一列的值" Public Function ExcuteScalar(ByVal cmdText As String, cmdType As CommandType) As Object Return ExcuteScalar(cmdText, cmdType, Nothing) End Function #End Region #Region "获取第一行的第一列的值,有参版,该方法被重载" Public Function ExcuteScalar(ByVal cmdText As String, ByVal cmdType As CommandType, sqlParams As SqlParameter()) As Object Dim result As Object = Nothing cmd.Connection = cnn cmd.CommandType = cmdType cmd.CommandText = cmdText Try ‘如果状态没有打开则,进行连接打开操作 If cnn.State = ConnectionState.Closed Then cnn.Open() End If ‘如果非空则进行参数的全部添加 If Not IsNothing(sqlParams) Then cmd.Parameters.AddRange(sqlParams) End If result = cmd.ExecuteScalar Return result Catch ex As Exception Throw New Exception("ExcuteScalar错误:", ex) Finally ConnectionClose(cnn) CommandClose(cmd) End Try End Function #End Region #Region "查询操作,返回datetable,被重载的函数ExcuteSelect" ‘‘‘ <summary> ‘‘‘ 执行查询的操作,有参版 ‘‘‘ </summary> ‘‘‘ <param name="cmdText"></param>要执行的sql命令文本 ‘‘‘ <param name="cmdType"></param>命令类型 ‘‘‘ <param name="sqlParams"></param>要执行数据库操作的sql命令中的参数 ‘‘‘ <returns></returns>dataTable,查询得出的数据库中的数据表项 ‘‘‘ <remarks></remarks> Public Function ExcuteSelect(ByVal cmdText As String, ByVal cmdType As CommandType, sqlParams As SqlParameter()) As DataTable Dim sqlAdapter As SqlDataAdapter Dim dataTable As DataTable Dim dataSet As New DataSet cmd.Connection = cnn cmd.CommandType = cmdType cmd.CommandText = cmdText ‘为什么此处没有进行cnn.open连接操作也可以连接数据库???,难道是非连接状态的操作? sqlAdapter = New SqlDataAdapter(cmd) Try cmd.Parameters.Clear() ‘清除参数 ‘如果传来了sqlparams参数则,添加到cmd对象中 If Not IsNothing(sqlParams) Then cmd.Parameters.AddRange(sqlParams) End If sqlAdapter.Fill(dataSet) ‘用sqlAdapter 将dataset 填充 dataTable = dataSet.Tables(0) ‘dataTable 为dataSet 的第一个表 Return dataTable ‘返回获得到的数据 Catch ex As Exception Throw New Exception("查询失败!" + ex.Message) Finally ConnectionClose(cnn) CommandClose(cmd) End Try End Function #End Region #Region "无参查询,返回datetable,此处重载ExcuteSelect函数" ‘‘‘ <summary> ‘‘‘ 无参查询,返回datetable,此处重载ExcuteSelect ‘‘‘ </summary> ‘‘‘ <param name="cmdText"></param>要执行的sql文本命令或者存储过程名称 ‘‘‘ <param name="cmdType"></param>要执行的语句的类型,sql语句或者存储过程 ‘‘‘ <returns></returns>DataTable对象实例 ‘‘‘ <remarks></remarks> Public Function ExcuteSelect(ByVal cmdText As String, ByVal cmdType As CommandType) As DataTable Return ExcuteSelect(cmdText, cmdType, Nothing) End Function #End Region ‘‘‘ <summary> ‘‘‘ 关闭连接对象,释放资源 ‘‘‘ </summary> ‘‘‘ <param name="cnn"></param> ‘‘‘ <remarks></remarks> Public Sub ConnectionClose(ByVal cnn As SqlConnection) If cnn.State = ConnectionState.Open Then cnn.Close() cnn = Nothing End If End Sub ‘‘‘ <summary> ‘‘‘ 关闭cmd对象,释放资源 ‘‘‘ </summary> ‘‘‘ <param name="cmd"></param> ‘‘‘ <remarks></remarks> Public Sub CommandClose(ByVal cmd As SqlCommand) If Not IsNothing(cmd) Then cmd.Dispose() cmd = Nothing End If End Sub End Class

小结:最初自己就写了两个简单的函数,最后发现不够用了,只好自己继续进行重构SQLHelper类呗。发现自己第二次再写的时候,对于这个数据库访问助手类已经手到拈来了,写起代码来如行云流水,这大概就是学习的过程,重复次数多了,做多了也就会了。所以,没有你做不到的,请坚信自己一定可以的!

vb.net如何编写高效率的SQLHelper——(二)代码实战

标签:重载

热心网友 时间:2022-04-29 21:52

1:给你一个例子,如何运用picturebox,直接拷过去运行,会自己生成窗体的Designer文件,从这个例子中你可以延伸理解picturebox
图片按钮:
参考:
http://hi.baidu.com/rdzwx/blog/item/77e92bec47d114222cf534fe.html

2,将事先在项目中添加了窗口的程序(比如:Form1)的DLL引进到主程序(FormMain)中,用你说的Form f = new Form1() f.Show()来打开,
在运行的时候,用这个方法就可以打开,
用Application.OpenForms这个方法可以找到你所有打开着的窗口,然后可以对他们进行关闭之类的操作
另外,不通过new也能打开class,请参考http://hi.baidu.com/rdzwx/blog/item/4bec471b93a87171dbb4bd18.html

3,我不知道

6,两个窗体间Form1,Form2
例子:
Form2.vb中定义
Public Property ProGramId() As String
Get
Return _programId
End Get
Set(ByVal value As String)
_programId = value
End Set
End Property
然后再Form1里面new Form2后就可以点出这个“ProGramId”,然后进行变量传递。(Form f = new Form2() f.ProGramId=“XXX”)

7,比如同一数据源:DataTable1,你若在表格中修改了数据,数据时实时反映到DataTable1,另一个控件应该能立即反映。如果不行然后你的另一个控件只要refresh一下就可以了。
例如: Dim dt1 As New DataTable
dt1.Columns.Add("A", GetType(Integer))
dt1.Columns.Add("B", GetType(Integer))
dt1.Columns.Add("C", GetType(Integer))
dt1.PrimaryKey = New DataColumn() { _
dt1.Columns("A")}
dt1.Rows.Add(1, 2, 3)
dt1.Rows.Add(11, 22, 33)
dt1.Rows.Add(111, 222, 333)
dt1.AcceptChanges()
dgv1.DataSource = dt1
dgv2.DataSource = dt1
dgv1是DataGridView控件。
我刚才试过,数据是实时变动的。

8,(1)可以通过建立session去取。
(2)Request.QueryString(“USER”)

9,用SelectedIndexChanged方法即可,不过你试过没有用是因为开发aspx的网页时考虑到要不要刷新页面的问题,你只需要将DropDownList.AutoPostBack的属性设置成True即可。

热心网友 时间:2022-04-29 23:10

1. .NET中好像没有Image控件,只有Image类,不过Image类是用来表示一个图像的(图片或者图标等)。你可以用PictureBox控件代替

示例代码:
PictureBox1.Image = Image.FromFile("f:\test.jpg")

2. 不好意思,我对Silverlight不太了解。不过WinForm的调用和原来VB里的处理方式是一样的。

3. 用VB.NET开发WinForm程序的时候,直接F5是可以编译运行的,不需要先编译再运行。Silverlight就不太清楚了。

6. 为你的窗体定义公共成员变量来传递。不过同样,是在窗体实例中传递的,不是在类中。
7. ADO.NET和ADO类似用法,也可以绑定到控件,挺方便的啊。
8. 也是通过Require去取的吧……
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
湖北哪些学校有专升本 湖北哪些学校可以报专升本 华为mate7会不会卡 中央集权的本质 秦朝中央集权的实质是什么 秦朝建立专制主义中央集权制度的本质特征是 A改王为皇帝 B建立中央官制... 想生个女儿怎么备孕 怎样备孕生女孩7个方法 备孕怎样做才能生女孩 天津市国税局公务员面试成绩去哪儿查? 联想M7250 打印机的墨盒如何添加墨粉? 如何带领本部门做好安全管理工作? 如何做好企业安全生产管理 联想M7250 打印机 怎样加墨 各地新年的习俗 猫咪可以带上火车吗?需要办什么证明 坐火车怎么带小猫 火车上可以带猫吗 火车上能带宠物吗?我有一个一月大的小猫,不知道可不可以带? 小猫能不能上火车 小猫可以带上火车嘛? 重庆两江新区产业发展集团有限公司怎么样? 火车上能带小猫猫吗? 重庆两江新区新亚航实业有限公司怎么样? 坐火车可以携带猫咪吗? 重庆精创联合环保工程有限公司两江新区分公司怎么样? 如何将幼猫带上火车 重庆艺鑫光芒文化传播有限公司两江新区分公司怎么样? 猫能带上火车吗? 重庆两江新区新利富实业有限公司怎么样? 酒精肝如何检查 请问如何检查酒精肝 酒精肝如何检查?酒精肝如何检查? 个人公众号发表文章的时候如何不检测原创- 问一问 酒精肝看什么科呢 检查有哪些 酒精肝引起了肝部疼痛怎么办?要去做什么检查 酒精肝检查的诊断标准 怎么调节耳机音量 请问福建泉州用友软件哪里买,财务,仓库,客户关系管理,酒店管理软件都有吗? 看酒精肝应该看什么科 新中大财务软件福建代理商 在福建,财务软件都有什么啊,听说速达3000可以,是真的么? 厦门市会计从业资格考试--2013年初级电算化采用的是什么软件? 现在什么财务软件比较好了? 福建福州2013电算化考试财务软件 今年福建会计从业考试电算化科目用的是哪个软件呢?哪里有视频教程? 那种颜色的红宝石最名贵,如何区别天然和人造的 福建大田县哪里有卖财务软件? 请问佩戴天然珠宝或人造珠宝会对人体有什么影响吗? 天然红蓝宝石、人造红蓝宝石、合成红蓝宝石的区别?