vb.net 重载解析失败,因为在没有缩小转换的情况下无法调用可访问的“新”
声明:本页面是StackOverFlow热门问题的中英对照翻译,遵循CC BY-SA 4.0协议,如果您需要使用它,必须同样遵循CC BY-SA许可,注明原文地址和作者信息,同时你必须将它归于原作者(不是我):StackOverFlow
原文地址: http://stackoverflow.com/questions/18781120/
Warning: these are provided under cc-by-sa 4.0 license. You are free to use/share it, But you must attribute it to the original authors (not me):
StackOverFlow
Overload resolution failed because no accessible 'new' can be called without a narrowing conversion
提问by user2775540
I have a problem.
我有个问题。
I am getting this error:
我收到此错误:
Overload resolution failed because no accessible 'new' can be called without a narrowing conversion.
重载解析失败,因为没有缩小转换就无法调用可访问的“新”。
Private Sub bt_hapus_Click(sender As Object, e As EventArgs) Handles bt_hapus.Click
Try
Dim sqlda As New SqlClient.SqlDataAdapter("Delete from tblpasien where No_Rkm_Mds=" & Me.No_Rkm_MdsTextBox.Text, Me.KlinikGigiDataSet)
sqlda.Fill(dbpasien, "tblpasien")
MsgBox("Data telah berhasil dihapus")
bersih()
pasif()
normal()
Catch ex As Exception
MsgBox(ex.Message)
End Try
End Sub
All source code :
所有源代码:
Public Class frm_pasien
Dim dbpasien As New DataSet
Dim dvpasien As New DataView
Dim tekan As Integer
Dim cari As Integer
Private Sub TblpasienBindingNavigatorSaveItem_Click(sender As Object, e As EventArgs) Handles TblpasienBindingNavigatorSaveItem.Click
Me.Validate()
Me.TblpasienBindingSource.EndEdit()
Me.TableAdapterManager.UpdateAll(Me.KlinikGigiDataSet)
End Sub
Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load
'TODO: This line of code loads data into the 'KlinikGigiDataSet.tblpembayaran' table. You can move, or remove it, as needed.
Me.TblpembayaranTableAdapter.Fill(Me.KlinikGigiDataSet.tblpembayaran)
'TODO: This line of code loads data into the 'KlinikGigiDataSet.tblpasien' table. You can move, or remove it, as needed.
Me.TblpasienTableAdapter.Fill(Me.KlinikGigiDataSet.tblpasien)
End Sub
Private Sub BindingNavigatorDeleteItem_Click(sender As Object, e As EventArgs) Handles BindingNavigatorDeleteItem.Click
End Sub
Private Sub BindingNavigatorAddNewItem_Click(sender As Object, e As EventArgs) Handles BindingNavigatorAddNewItem.Click
End Sub
Private Sub bt_keluar_Click(sender As Object, e As EventArgs) Handles bt_keluar.Click
Dim pesan As DialogResult = MsgBox("Apakah anda yakin akan keluar", MsgBoxStyle.OkCancel)
If pesan = DialogResult.OK Then
Me.Close()
Else
Exit Sub
End If
End Sub
Private Sub bt_hapus_Click(sender As Object, e As EventArgs) Handles bt_hapus.Click
Try
Dim sqlda As New SqlClient.SqlDataAdapter("Delete from tblpasien where No_Rkm_Mds=" & Me.No_Rkm_MdsTextBox.Text, Me.KlinikGigiDataSet)
sqlda.Fill(dbpasien, "tblpasien")
MsgBox("Data telah berhasil dihapus")
bersih()
pasif()
normal()
Catch ex As Exception
MsgBox(ex.Message)
End Try
End Sub
Private Sub bersih()
Me.No_Rkm_MdsTextBox.Clear()
Me.NamaTextBox.Clear()
Me.UmurTextBox.Clear()
Me.Tgl_LhrTextBox.Clear()
Me.AlamatTextBox.Clear()
Me.No_HpTextBox.Clear()
Me.No_Rkm_MdsTextBox.Focus()
End Sub
Private Sub pasif()
Me.No_Rkm_MdsTextBox.Enabled = False
Me.NamaTextBox.Enabled = False
Me.UmurTextBox.Enabled = False
Me.Tgl_LhrTextBox.Enabled = False
Me.AlamatTextBox.Enabled = False
Me.No_HpTextBox.Enabled = False
End Sub
Private Sub normal()
Me.bt_tambah.Enabled = True
Me.bt_edit.Enabled = True
Me.bt_simpan.Enabled = False
Me.bt_reset.Enabled = False
Me.bt_hapus.Enabled = False
Me.bt_keluar.Enabled = True
End Sub
Private Sub binding()
Me.No_Rkm_MdsTextBox.DataBindings.Clear()
Me.No_Rkm_MdsTextBox.DataBindings.Add("Text", dvpasien, "Id")
Me.NamaTextBox.DataBindings.Clear()
Me.NamaTextBox.DataBindings.Add("Text", dvpasien, "Nama")
Me.UmurTextBox.DataBindings.Clear()
Me.UmurTextBox.DataBindings.Add("Text", dvpasien, "Alamat")
Me.Tgl_LhrTextBox.DataBindings.Clear()
Me.Tgl_LhrTextBox.DataBindings.Add("Text", dvpasien, "Ttl")
Me.AlamatTextBox.DataBindings.Clear()
Me.AlamatTextBox.DataBindings.Add("value", dvpasien, "Jkl")
Me.No_HpTextBox.DataBindings.Clear()
Me.No_HpTextBox.DataBindings.Add("Text", dvpasien, "Pekerjaan")
End Sub
Private Sub No_Rkm_MdsTextBox_TextChanged(sender As Object, e As EventArgs) Handles No_Rkm_MdsTextBox.TextChanged
If Len(Me.No_Rkm_MdsTextBox.Text) < 10 Then
Exit Sub
End If
dvpasien.Sort = "Id"
Try
cari = dvpasien.Find(Me.No_Rkm_MdsTextBox.Text)
If cari = -1 Then
If tekan = 1 Then
Me.No_Rkm_MdsTextBox.Focus()
Else
MsgBox("Data tidak ada")
bersih()
End If
Else
If tekan = 1 Then
MsgBox("Data sudah ada")
bersih()
Else
binding()
tampilgrid()
Me.bt_edit.PerformClick()
End If
End If
Catch ex As Exception
MsgBox(ex.Message)
End Try
End Sub
Private Sub tampilgrid()
Throw New NotImplementedException
End Sub
End Class
Please help this is my essay from my lecturer.
请帮助这是我的讲师的论文。
采纳答案by Dhaval
Have you declared your datasetwith New keyword?
你有没有dataset用 New 关键字声明过你的?
Means something as follows:
意思如下:
Dim dbpasien As New DataSet()
Or
或者
Using dbpasien As DataSet = New DataSet()
回答by Alex
MSDNexplains this exception is due to bad overloaded method types
MSDN解释这个异常是由于错误的重载方法类型
You have made a call to an overloaded method, but the compiler cannot find a method that can be called without a narrowing conversion. A narrowing conversion changes a value to a data type that might not be able to precisely hold some of the possible values.
您已调用重载方法,但编译器找不到可以在不进行收缩转换的情况下调用的方法。收缩转换将值更改为可能无法精确保存某些可能值的数据类型。

