0

我的页面中有一个地图,当单击标记时,它会转到 RptVendedorController 中的一个动作气球,就像这样,

public ActionResult Balloon( int id,string tipoPin , bool clienteCompleto)

对于我这样创建的标记的网址

Url.Action("Balloon", "RptVendedor", new { id = cliente.ClienteId, tipoPin = "clientes", clienteCompleto = true }) }

在服务器端给出这个

url:/RptVendor/Balloon/4?tipoPin=clientes&clienteCompleto=True

我的问题是,由于某种原因,网址发生了变化,当我单击标记时,这是我得到的网址(在下面)它添加(amp;)所以它没有击中我的动作,因为它没有很好地格式化查询中的 clientecompleto细绳

Request URL:http://localhost:10657/RptVendedor/Balloon/4?tipoPin=clientes&clienteCompleto=True

并且不知道它添加(amp;)的原因?

编辑

我把一个viewModel

Globo = new MostrarMapaGlobo { Ancho = 400, Alto = 200, Url = Url.Action("Balloon", "RptVendedor", new { id = cliente.ClienteId, tipoPin = "clienteGeografico" }) }

并且在局部视图中

@foreach (var pin in Model.Pines)
        {
            <text>
            var marker = new google.maps.Marker({
                position: new google.maps.LatLng(@pin.Posicion.Latitud, @pin.Posicion.Longitud),
                map: map,
                title: '@pin.AltText',
                icon: new google.maps.MarkerImage('@Html.Raw(pin.Icono.Replace("[color]", pin.Color.Substring(1)))'),
                @if (pin.Click)
                {
                    @:clickable: true,
                }
                else
                {
                    @:clickable: false,
                }
                @if(pin.Movil)
                {
                    @:draggable: true,
                }
                else
                {
                    @:draggable: false,
                }

                @if (!string.IsNullOrWhiteSpace(pin.Globo.Extras))
                {
                    @pin.Globo.Extras@:,
                }
                ancho: '@pin.Globo.Ancho' + 'px',
                alto: '@pin.Globo.Alto' + 'px',
                url: '@pin.Globo.Url',
                contenido: '@pin.Globo.Contenido'
            });
            oms.addMarker(marker);
            markers.push(marker);
            </text>
                if (Model.Ruta != null && pin.Ruta)
                {
                @:posiciones.push(new google.maps.LatLng(@pin.Posicion.Latitud, @pin.Posicion.Longitud));                            
            }
        }   
4

1 回答 1

0

好的,在这里您应该使用以下命令进行转义Html.Raw

...
url: '@Html.Raw(pin.Globo.Url)',
...
于 2013-04-25T13:12:11.970 回答