jrthor2
04-16-2004, 08:15 AM
I have the following code that uses Microsoft's MapPoint webservice to give me a location of a person's cell phone. Below is the code that gives me back the person's location. right now it displays a users username and domain. What I would like ti to show is the users first/last name. The variable p.Label is what is used to display this. Could someone help me write the code to iterate through my array of locatable contacts, performing a string compare of pr.DomainAlias to LocatableContact[i].DomainAlias. When I find the match, I then have to get the display name from there, and assign it to p.Label. Current code is below:
If rbBuddy.Checked = True Then
Dim myContacts() As LocatableContact
myContacts = Session("myContacts")
Dim li As ListItem
Dim al As ArrayList = New ArrayList
Dim cnt As Integer = -1
For Each li In lstBuddies.Items
cnt = cnt + 1
If li.Selected = True Then
al.Add(mycontacts(cnt).DomainAlias)
End If
Next
Dim users(al.Count - 1) As String
users = al.ToArray(GetType(String))
Try
posResults = locService.GetPositions(users)
If posResults.PositionsFound <= 0 Then
lblMessage.Text = "Problem finding."
Else
Dim pr As Position
Dim local As New ArrayList
Dim l As Location = New Location
For Each pr In posResults.Positions
If pr.ResultCode = PositionResultCode.Succeeded Then
Dim p As New Pushpin
p.Label = pr.DomainAlias
p.LatLong = pr.LatLong
'p.IconDataSource = "MapPoint.Icons"
'p.IconName = "152"
'prgjr1 - use our custom icons
p.IconDataSource = "Rite_Aid.8792"
p.IconName = "mobile_phone"
p.PinID = "pinid"
pins.Add(p)
l = New Location
l.LatLong = New LatLong
l.LatLong = pr.LatLong
local.Add(l)
End If
Next
lblMessage.Text = "Found Location!"
Dim myRenderService As New RenderServiceSoap
myRenderService = Session("myRenderService")
Dim ds As String
ds = lstDatasource.SelectedValue
mv = myRenderService.GetBestMapView( _
local.ToArray(GetType(Location)), ds).ByHeightWidth
'mv.CenterPoint = posResults.Positions(0).LatLong
'mv.Height = 1.0
'mv.Width = 1.0
'lstZoom.SelectedIndex = 2
End If
Catch ex As Exception
lblMessage.Text = "Error Finding Buddies. Try again in a few minutes." '& ex.ToString
End Try
End If
If rbBuddy.Checked = True Then
Dim myContacts() As LocatableContact
myContacts = Session("myContacts")
Dim li As ListItem
Dim al As ArrayList = New ArrayList
Dim cnt As Integer = -1
For Each li In lstBuddies.Items
cnt = cnt + 1
If li.Selected = True Then
al.Add(mycontacts(cnt).DomainAlias)
End If
Next
Dim users(al.Count - 1) As String
users = al.ToArray(GetType(String))
Try
posResults = locService.GetPositions(users)
If posResults.PositionsFound <= 0 Then
lblMessage.Text = "Problem finding."
Else
Dim pr As Position
Dim local As New ArrayList
Dim l As Location = New Location
For Each pr In posResults.Positions
If pr.ResultCode = PositionResultCode.Succeeded Then
Dim p As New Pushpin
p.Label = pr.DomainAlias
p.LatLong = pr.LatLong
'p.IconDataSource = "MapPoint.Icons"
'p.IconName = "152"
'prgjr1 - use our custom icons
p.IconDataSource = "Rite_Aid.8792"
p.IconName = "mobile_phone"
p.PinID = "pinid"
pins.Add(p)
l = New Location
l.LatLong = New LatLong
l.LatLong = pr.LatLong
local.Add(l)
End If
Next
lblMessage.Text = "Found Location!"
Dim myRenderService As New RenderServiceSoap
myRenderService = Session("myRenderService")
Dim ds As String
ds = lstDatasource.SelectedValue
mv = myRenderService.GetBestMapView( _
local.ToArray(GetType(Location)), ds).ByHeightWidth
'mv.CenterPoint = posResults.Positions(0).LatLong
'mv.Height = 1.0
'mv.Width = 1.0
'lstZoom.SelectedIndex = 2
End If
Catch ex As Exception
lblMessage.Text = "Error Finding Buddies. Try again in a few minutes." '& ex.ToString
End Try
End If