[英]I have these problems with 'Connection' is ambiguous in the namespace 'ADODB' and 'Recordset' is ambiguous with 'ADODB'
我已經檢查過我只有一個 ADODB 引用。 我嘗試了干凈的解決方案,但沒有任何改變。 我將這個項目從 VS2010 遷移到 VS2017。
這是我的代碼:
Imports System.Text.RegularExpressions
Module globalmodule
Public conn As New ADODB.Connection
Public rs As New ADODB.Recordset
Public rss As New ADODB.Recordset
Public trs As New ADODB.Recordset
Public sql As String
Public Function Opendb()
If conn.State = 1 Then conn.Close()
conn.Open("Provider=SQLOLEDB.1;Integrated Security=SSPI;Persist Security Info=False;Initial Catalog=dbEmployee;Data Source=TECHNOPU\SQL;")
Return 0
End Function
Function EmailAddressCheck(ByVal emailAddress As String) As Boolean
Dim pattern As String = "^[a-zA-Z][\w\.-]*[a-zA-Z0-9]@[a-zA-Z0-9][\w\.-]*[a-zA-Z0-9]\.[a-zA-Z][a-zA-Z\.]*[a-zA-Z]$"
Dim emailAddressMatch As Match = Regex.Match(emailAddress, pattern)
If emailAddressMatch.Success Then
EmailAddressCheck = True
Else
EmailAddressCheck = False
End If
If EmailAddressCheck = False Then
MsgBox("Entervalid E-mail ID")
End If
End Function
Public empid As String
End Module
我知道這是一個老問題,但以防萬一這對其他人有幫助。 我今天遇到了同樣的問題,和 OP 一樣,我做的第一件事就是檢查我沒有引用沖突的 ADODB 版本。
一切看起來都很好,所以我被難住了一段時間。 我嘗試清理解決方案,退出並重新加載 Visual Studio,再次檢查引用無濟於事。
事實證明,盡管 Visual Studio 報告項目文件中只引用了一個版本的 ADODB,但我有以下內容;
<ItemGroup>
<COMReference Include="ADODB">
<Guid>{2A75196C-D9EB-4129-B803-931327F72D5C}</Guid>
<VersionMajor>2</VersionMajor>
<VersionMinor>8</VersionMinor>
<Lcid>0</Lcid>
<WrapperTool>primary</WrapperTool>
<Isolated>False</Isolated>
<EmbedInteropTypes>True</EmbedInteropTypes>
</COMReference>
<COMReference Include="ADODB">
<Guid>{B691E011-1797-432E-907A-4D8C69339129}</Guid>
<VersionMajor>6</VersionMajor>
<VersionMinor>1</VersionMinor>
<Lcid>0</Lcid>
<WrapperTool>tlbimp</WrapperTool>
<Isolated>False</Isolated>
<EmbedInteropTypes>True</EmbedInteropTypes>
</COMReference>
從項目文件中刪除有問題的 COMReference(在我的例子中是 2.8 版)並重新加載項目完成了工作!
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.