0

asp.net経由でWebサービスを作成しています。以下に示すように、燃料ストップのアドレスをリストとして取得したいのですが、残念ながら、xml から以下に示すように、アドレスの文字列名を取得しています...

残念ながら、これを実行すると、次の内容で満たされたxmlファイルが取得されます

-<FuelStop> 
    <Physical_Address_Street>Physical_Address_Street</Physical_Address_Street>                   
    <Physical_Address_Local>Physical_Address_Local</Physical_Address_Local> 
    <Physical_Address_State>Physical_Address_State</Physical_Address_State>           
    <Physical_Address_Zip>Physical_Address_Zip</Physical_Address_Zip> 
    <Phone_Number>Phone_Number</Phone_Number> 
</FuelStop>

データベースに入力されている住所情報を取得することとは対照的です。

以下は私のコードです。

Imports System.Web.Services
Imports System.Web.Services.Protocols
Imports System.ComponentModel
Imports System.Data
Imports System.Data.SqlClient

<System.Web.Services.WebService(Namespace:="http://watersports.com 8010/",     Description:="Holds Fuel Stop and Shelter information", Name:="ShelterandFuelService")> _
<System.Web.Services.WebServiceBinding(ConformsTo:=WsiProfiles.BasicProfile1_1)> _
<ToolboxItem(False)> _
Public Class Service1
Inherits System.Web.Services.WebService

<WebMethod()> _
Public Function GetAddresses(ByVal skip As Integer, ByVal take As Integer) As FuelStop()

    Dim sqlCon As New SqlConnection
    Dim resultList = New List(Of FuelStop)()


    Try

        sqlCon.ConnectionString = "Data Source=google.watersports.com;Initial Catalog=myDb;Persist Security Info=True;Connect Timeout=30;User ID=****;Password=******"
                   Dim command As New SqlCommand("SELECT @Physical_Address_Street, @Physical_Address_Local, @Physical_Address_State, @Physical_Address_Zip, @Phone_Number FROM Gas_Stations WHERE Location_Type = 1")
        command.Parameters.Add("@Physical_Address_Street", SqlDbType.VarChar, 50).Value = "Physical_Address_Street"
        command.Parameters.Add("@Physical_Address_Local", SqlDbType.VarChar, 50).Value = "Physical_Address_Local"
        command.Parameters.Add("@Physical_Address_State", SqlDbType.VarChar, 50).Value = "Physical_Address_State"
        command.Parameters.Add("@Physical_Address_Zip", SqlDbType.VarChar, 50).Value = "Physical_Address_Zip"
        command.Parameters.Add("@Phone_Number", SqlDbType.VarChar, 50).Value = "Phone_Number"

        command.Connection = sqlCon
        sqlCon.Open()
        'command.ExecuteNonQuery()
        Using reader = command.ExecuteReader()
            While reader.Read()
                Dim fuelStop = New FuelStop()
                fuelStop.Physical_Address_Street = reader.GetString(0)
                fuelStop.Physical_Address_Local = reader.GetString(1)
                fuelStop.Physical_Address_State = reader.GetString(2)
                fuelStop.Physical_Address_Zip = reader.GetString(3)
                fuelStop.Phone_Number = reader.GetString(4)

                resultList.Add(fuelStop)


            End While
        End Using

    Catch ex As Exception

        sqlCon.Close()
    Finally
        sqlCon.Close()

    End Try
    Return resultList.Skip(skip).Take(take).ToArray()

以下の Sql コマンドに基づいて、おそらく数百のアドレスを返します。これを vb.net ロジックに組み込んで、アドレスのリストを返すにはどうすればよいですか?

Dim command As New SqlCommand("SELECT Physical_Address_Street, Physical_Address_Local, Physical_Address_State, Physical_Address_Zip, Phone_Number FROM Gas_Stations WHERE Location_Type = 1")

そして、これが私の燃料停止クラスです

Public Class FuelStop

    Property Physical_Address_Street As String

    Property Physical_Address_Local As String

    Property Physical_Address_State As String

    Property Physical_Address_Zip As String

    Property Phone_Number As String

End Class
4

1 に答える 1