首页 > 解决方案 > VS2017中的VB.Net函数重载解决问题

问题描述

在将 vb.net 项目从 VS2010 迁移到 VS 2017 时,由于函数重载解析不正确,我们得到了缺少参考错误

JS ***************************项目1 ********************* **********

Imports Microsoft.Practices
Imports Microsoft.Practices.EnterpriseLibrary.Data
Public MustInherit Class DataLayerSQLBase
    Private m_factory As EnterpriseLibrary.Data.DatabaseProviderFactory
    Private m_database As Microsoft.Practices.EnterpriseLibrary.Data.Database
    Public Function ExecuteReader(ByVal spName As String) As IDataReader
        m_database = m_factory.CreateDefault
        Return ExecuteReader(m_database, spName)
    End Function
    Public Function ExecuteReader(ByVal spName As String, ByVal secondparam As String) As IDataReader
        m_database = m_factory.CreateDefault
        Return ExecuteReader(m_database, spName)
    End Function
    Public Function ExecuteReader(ByVal database As EnterpriseLibrary.Data.Database, ByVal spName As String) As IDataReader
        Dim m_Command = database.GetStoredProcCommand(spName)
        m_Command.CommandTimeout = 300
        Return m_Command.ExecuteReader
    End Function

End Class

******************************项目1 ********************** ********* ***************************项目2 ************* ******************

该项目引用了项目 1 并且没有 Enterprise.Library.Data.dll 引用,这在 VS2017 中无法编译,要求添加引用,但在 VS2010 中工作而不添加引用

Imports ClassLibrary1
Public Class Class3
    Inherits DataLayerSQLBase
    Public Sub Test()
        MyBase.ExecuteReader("aaaa", "aaaaa")
    End Sub
End Class

标签: vb.netvisual-studio-2017

解决方案


推荐阅读