📄 search.aspx.cs
字号:
using System;
using System.Collections;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Web;
using System.Web.SessionState;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.HtmlControls;
using GIS;
using DataLayer;
using System.Data.SqlClient;
namespace openagent.Map
{
/// <summary>
/// Search 的摘要说明。
/// </summary>
public class Search : System.Web.UI.Page
{
private void Page_Load(object sender, System.EventArgs e)
{
// 在此处放置用户代码以初始化页面
FindPath fp=new FindPath();
BankInfo bi=null;
string FindType = Request.QueryString["type"];
string data=null;
string[] datatmp = null;
decimal Lo = 0;
decimal La = 0;
switch(FindType)
{
case "1"://范围查找
decimal lon1 = Convert.ToDecimal(Request.QueryString["lon1"]);
decimal lat1 = Convert.ToDecimal(Request.QueryString["lat1"]);
decimal lon2 = Convert.ToDecimal(Request.QueryString["lon2"]);
decimal lat2 = Convert.ToDecimal(Request.QueryString["lat2"]);
datatmp = fp.boundFind(lon1,lat1,lon2,lat2);
if(datatmp==null)//没有找到符合条件的银行
{
data ="nofoundbank;nofound";
}
else
{
data = datatmp[0];//银行经纬度
for (int i=1; i < datatmp.Length;i++)
{
bi=new BankInfo(datatmp[i]);
//银行经纬度+银行名字1+业务2+开门时间3+关门时间4+公交信息5
data = data +";"+bi.getBankName()+"|"+bi.getBusiness()+"|"+bi.getOpenTime()+"|"+bi.getCloseTime()+"|"+bi.getBusInfo();
}
}
break;
case "2"://中心点查找,添地物名字
DbAccess da = new DbAccess();
string BankName = Request.QueryString["bankname"].Trim();
string Business = Request.QueryString["business"].Trim();
string sqlstr = "select Lo,La from KeyObject where Oname ='"+Request.QueryString["keyword"].Trim()+"'";
SqlDataReader dr = (SqlDataReader)da.ExecuteDataReader(sqlstr);
while(dr.Read())
{
Lo = Convert.ToDecimal(dr.GetDecimal(0));
La = Convert.ToDecimal(dr.GetDecimal(1));
}
if (Lo!=0)
{
datatmp = fp.findNearest(Lo,La,true,BankName,Business);
if(datatmp==null)//没有找到符合条件的银行
{
data ="nofoundbank,nofound";
}
else
{
bi=new BankInfo(datatmp[1]); //根据找到的银行网点ID,构造BankInfo
//银行经纬度+银行名字1+业务2+开门时间3+关门时间4+公交信息5
data = datatmp[0]+";"+bi.getBankName()+";"+bi.getBusiness()+";"+bi.getOpenTime()+";"+bi.getCloseTime()+";"+bi.getBusInfo();
}
}
else//没有找到这个地物
{
data = "nofoundkeyobj,nofound";
}
break;
case"3"://最短路径查找
Lo = Convert.ToDecimal(Request.QueryString["lon"]);
La = Convert.ToDecimal(Request.QueryString["lat"]);
int id = 0;
datatmp = fp.findNearest(Lo,La,false,"","");
if (datatmp==null)
{
data = "0";
}
else
{
id = Convert.ToInt16(datatmp[1]);
string[] ShortestRoad = fp.getPath(id);
bi=new BankInfo(ShortestRoad[2]); //根据找到的银行网点ID,构造BankInfo
//银行经纬度+银行名字1+业务2+开门时间3+关门时间4+公交信息5
if (ShortestRoad == null)
{
data ="nofoundbank|nofound";
}
else
{
data = Lo+","+La+","+ShortestRoad[1];
data = data + "|" + bi.getBankName()+";"+bi.getBusiness()+";"+bi.getOpenTime()+";"+bi.getCloseTime()+";"+bi.getBusInfo()+";"+ShortestRoad[0];
}
}
break;
case "4"://中心点查找,图中选点
Lo = Convert.ToDecimal(Request.QueryString["lon"]);
La = Convert.ToDecimal(Request.QueryString["lat"]);
datatmp = fp.findNearest(Lo,La,true,"","");
if(datatmp==null)//没有找到符合条件的银行
{
data ="nofoundbank,nofound";
}
else
{
bi=new BankInfo(datatmp[1]); //根据找到的银行网点ID,构造BankInfo
//银行经纬度+银行名字1+业务2+开门时间3+关门时间4+公交信息5
data = datatmp[0]+";"+bi.getBankName()+";"+bi.getBusiness()+";"+bi.getOpenTime()+";"+bi.getCloseTime()+";"+bi.getBusInfo();
}
break;
}
Response.ContentType="text/xml";
Response.Expires=0;
Response.ContentEncoding=System.Text.Encoding.UTF8;
Response.Write("<?xml version='1.0' encoding='utf-8'?>");
Response.Write("<gps><data>");
Response.Write(data);
Response.Write("</data>");
Response.Write("</gps>");
Response.End();
}
#region Web 窗体设计器生成的代码
override protected void OnInit(EventArgs e)
{
//
// CODEGEN: 该调用是 ASP.NET Web 窗体设计器所必需的。
//
InitializeComponent();
base.OnInit(e);
}
/// <summary>
/// 设计器支持所需的方法 - 不要使用代码编辑器修改
/// 此方法的内容。
/// </summary>
private void InitializeComponent()
{
this.Load += new System.EventHandler(this.Page_Load);
}
#endregion
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -