我在控制器中有下一个方法
public ActionResult LimitesCampo(int id)
{
var kml = fieldService.GetKml(id);
FileInfo fileInfo = new FileInfo("Field" + id + ".kml");
if (!fileInfo.Exists)
{
using (StreamWriter writer = fileInfo.CreateText())
{
writer.WriteLine(limites.KML);
}
}
this.Response.AddHeader("Content-Disposition", "filename=" + Server.HtmlEncode("Field" + id + ".kml"));
this.Response.ContentType = "application/vnd.google-earth.kml+xml";
return File(fileInfo.OpenRead(), "application/vnd.google-earth.kml+xml");
}
当我输入控制器操作的 URL 时,KML 会正确返回,即使浏览器要求下载文件并且在 Google 地球独立应用程序上工作正常,但是如果我尝试从 jQuery AJAX 函数中检索 KML,KML 不起作用在我的应用程序的 GE 插件上。我尝试使用存储在磁盘上的 KML 文件并正常工作,问题在于动态数据。
注意:我正在使用与 Visual Studio 2010 Express 集成的 Web 服务器。