ASP.NET WebMethod retorna JSON entre aspas

Eu tenho uma página asp.net com um WebMethod para passar JSON de volta ao meu javascript.

Abaixo está o método da web:

[WebMethod]
public static string getData(Dictionary<string, string> d) {

    string response = "{ \"firstname\": \"John\", \"lastname\": \"Smith\" }";

    return response;

}

Quando isso é retornado ao cliente, ele é formatado da seguinte maneira:

{ \"d\": \"{ \"firstname\": \"John\", \"lastname\": \"Smith\" }\" }

O problema é que as aspas duplas envolvem tudo em 'd'. Há algo que eu perdi no método web ou algum outro meio de retornar os dados sem as aspas? Eu realmente não quero tirar isso do cliente toda vez. Também vi outros artigos em que isso não acontece.

Qualquer ajuda seria apreciada obrigado.

questionAnswers(3)

yourAnswerToTheQuestion