関数に渡されるパラメーターに基づいて、データベースから単一のエントリを読み取ろうとしています。接続文字列は他の場所で使用しているため機能しており、SQL ステートメントは SQL Server で問題なく実行できるため機能します。私が抱えている問題は、「return」ステートメントにあります。どこに置いても、どこに宣言しても、データベーステーブルを読み取るWhileループをどこに置いても、「サイトIDを返す」に緑色の波線が表示され、「値が割り当てられる前に変数「サイトID」が使用されています」と表示されます
Public Function GetSiteID(ByVal siteName As String) As String
Dim strConnectionString2 As String = ConfigurationManager.ConnectionStrings("AVDataConnectionString").ConnectionString
Dim strQueryString2 As String = "SELECT SourceSite.SourceSiteID FROM[AVData].[dbo].[SourceSite] JOIN [AVData].[dbo].[SourceSiteMetaTag] ON SourceSite.SourceSiteID=[SourceSiteMetaTag].[SourceSiteID] WHERE SourceSiteMetaTag.TagName='SiteType' AND SourceSiteMetaTag.TagValue='Network'order by [Description] asc AND SiteName = '" & siteName & "'"
Dim connection2 As New SqlConnection(strConnectionString2)
Dim command2 As New SqlCommand(strQueryString2, connection2)
Dim siteID As String
Try
connection2.Open()
Dim myReader As SqlDataReader = command2.ExecuteReader()
While myReader.Read()
siteID = myReader("SourceSiteID").ToString()
End While
Catch ex As Exception
Throw ex
Finally
connection2.Close()
End Try
Return siteID
End Function