コード例 #1
0
        private async Task <List <JobResponseDTO> > GetJobListFromLiepinAsync(string city, string keyword, int pageIndex)
        {
            var    cityCode = CityCode.GetCityCode(JobSource.猎聘, city);
            string url      = string.Format("http://www.liepin.com/zhaopin/?key={0}&dqs={1}&curPage={2}", keyword, cityCode, pageIndex);

            using (HttpClient httpClient = new HttpClient())
            {
                var htmlString = await httpClient.GetStringAsync(url);

                HtmlParser htmlParser = new HtmlParser();
                var        jobs       = (await htmlParser.ParseAsync(htmlString)).QuerySelectorAll("ul.sojob-list li")
                                        .Where(a => a.QuerySelectorAll(".job-info h3 a").FirstOrDefault() != null)
                                        .Select(b => new JobResponseDTO()
                {
                    JobTitle      = b.QuerySelectorAll(".job-info h3 a").FirstOrDefault().TextContent,
                    CompanyName   = b.QuerySelectorAll(".company-name a").FirstOrDefault().TextContent,
                    Salary        = b.QuerySelectorAll(".text-warning").FirstOrDefault().TextContent,
                    WorkingPlace  = b.QuerySelectorAll(".area").FirstOrDefault().TextContent,
                    ReleaseDate   = b.QuerySelectorAll(".time-info time").FirstOrDefault().TextContent,
                    DetailUrl     = b.QuerySelectorAll(".job-info h3 a").FirstOrDefault().Attributes.FirstOrDefault(f => f.Name == "href").Value,
                    JobSource     = JobSource.猎聘,
                    JobSourceText = "猎聘"
                }).ToList();

                return(jobs);
            }
        }
コード例 #2
0
        private async Task <List <JobResponseDTO> > GetJobListFromBossAsync(string city, string keyword, int pageIndex)
        {
            var    cityCode = CityCode.GetCityCode(JobSource.BOSS, city);
            string url      = string.Format("http://www.zhipin.com/c{0}/h_{0}/?query={1}&page={2}", cityCode, keyword, pageIndex);

            using (var httpClient = new HttpClient())
            {
                var htmlString = await httpClient.GetStringAsync(url);

                HtmlParser htmlParser = new HtmlParser();
                var        jobs       = (await htmlParser.ParseAsync(htmlString)).QuerySelectorAll(".job-list ul li")
                                        .Where(a => a.QuerySelectorAll(".info-primary h3").FirstOrDefault() != null)
                                        .Select(b => new JobResponseDTO()
                {
                    JobTitle      = b.QuerySelectorAll(".info-primary h3").FirstOrDefault().TextContent,
                    CompanyName   = b.QuerySelectorAll(".company-text h3").FirstOrDefault().TextContent,
                    Salary        = b.QuerySelectorAll(".info-primary h3 .red").FirstOrDefault().TextContent,
                    WorkingPlace  = b.QuerySelectorAll(".info-primary p").FirstOrDefault().TextContent,
                    ReleaseDate   = b.QuerySelectorAll(".job-time .time").FirstOrDefault().TextContent,
                    DetailUrl     = "http://www.zhipin.com" + b.QuerySelectorAll("a").FirstOrDefault().Attributes.FirstOrDefault(f => f.Name == "href").Value,
                    JobSource     = JobSource.BOSS,
                    JobSourceText = "BOSS直聘"
                }).ToList();

                return(jobs);
            }
        }
コード例 #3
0
        private async Task <List <JobResponseDTO> > GetJobListFromQianchengAsync(string city, string keyword, int pageIndex)
        {
            var    cityCode = CityCode.GetCityCode(JobSource.前程, city);
            string url      = string.Format("http://search.51job.com/jobsearch/search_result.php?jobarea={0}&keyword={1}&curr_page={2}", cityCode, keyword, pageIndex);

            using (HttpClient httpClient = new HttpClient())
            {
                var htmlBytes = await httpClient.GetByteArrayAsync(url);

                var        htmlString = Encoding.GetEncoding("GBK").GetString(htmlBytes);
                HtmlParser htmlParser = new HtmlParser();
                var        jobs       = (await htmlParser.ParseAsync(htmlString)).QuerySelectorAll(".dw_table div.el")
                                        .Where(a => a.QuerySelectorAll(".t1 span a").FirstOrDefault() != null)
                                        .Select(b => new JobResponseDTO()
                {
                    JobTitle      = b.QuerySelectorAll(".t1 span a").FirstOrDefault().TextContent,
                    CompanyName   = b.QuerySelectorAll(".t2 a").FirstOrDefault().TextContent,
                    WorkingPlace  = b.QuerySelectorAll(".t3").FirstOrDefault().TextContent,
                    Salary        = b.QuerySelectorAll(".t4").FirstOrDefault().TextContent,
                    ReleaseDate   = b.QuerySelectorAll(".t5").FirstOrDefault().TextContent,
                    DetailUrl     = b.QuerySelectorAll(".t1 span a").FirstOrDefault().Attributes.FirstOrDefault(f => f.Name == "href").Value,
                    JobSource     = JobSource.前程,
                    JobSourceText = "前程无忧"
                }).ToList();

                return(jobs);
            }
        }
コード例 #4
0
        // GET: /Platform/iDepartment/Edit/5
        /// <summary>
        /// </summary>
        /// <param name="id">
        /// </param>
        /// <returns>
        /// </returns>
        public async Task <IActionResult> EditAsync(string id)
        {
            var item = new CityCode();

            if (!string.IsNullOrEmpty(id))
            {
                item = JsonConvert.DeserializeObject <CityCode>(jsonDataService.FindAsync(id).Result.JsonDataStr);
            }
            return(View(item));
        }
コード例 #5
0
 public override int GetHashCode()
 {
     unchecked
     {
         var hashCode = (CityCode != null ? CityCode.GetHashCode() : 0);
         hashCode = (hashCode * 397) ^ (City != null ? City.GetHashCode() : 0);
         hashCode = (hashCode * 397) ^ (Province != null ? Province.GetHashCode() : 0);
         hashCode = (hashCode * 397) ^ ProvinceCode.GetHashCode();
         return(hashCode);
     }
 }
コード例 #6
0
 public ActionResult <CityCode> queryByAdcode(string adcode)
 {
     using (WeatherDbContext context = new WeatherDbContext())
     {
         CityCode city =
             (from c in context.CityCode
              where c.ad_code == adcode
              select c).FirstOrDefault();
         return(city);
     }
 }
コード例 #7
0
 public ActionResult <CityCode> queryByName(string cityname)
 {
     using (WeatherDbContext context = new WeatherDbContext())
     {
         CityCode city =
             (from c in context.CityCode
              where c.city_CN == cityname
              select c).FirstOrDefault();
         return(city);
     }
 }
コード例 #8
0
        public async Task <IActionResult> EditAsync(string id, CityCode collection)
        {
            if (!ModelState.IsValid)
            {
                return(View(collection));
            }

            await jsonDataService.SaveAsync(id, collection);

            await _unitOfWork.CommitAsync();

            return(new EditSuccessResult(id));
        }
コード例 #9
0
        /// <summary>
        ///     Метод загрузки имени территории по телефонному номеру
        /// </summary>
        public void GetTerritoryName()
        {
            var sqlParams = new Dictionary <string, object>
            {
                { "@phone", new object[] { CountryCode + CityCode.ToString(), DBManager.ParameterTypes.String } }
            };
            var dt = DBManager.GetData(SQLQueries.SELECT_ТелефонныеКоды, CN, CommandType.Text, sqlParams);

            if (dt != null && dt.Rows.Count == 1 && CountryCode + CityCode.ToString() ==
                dt.Rows[0]["ТелКодСтраны"].ToString() + dt.Rows[0]["ТелКодВСтране"])
            {
                TerritoryName = Name = dt.Rows[0]["Направление"].ToString();
            }
        }
コード例 #10
0
        public List <CityCode> GetCityCode()
        {
            string          sql          = "select * from dbo.CityCode";
            List <CityCode> listCityCode = new List <CityCode>();

            using (SqlConnection conn = new SqlConnection(strConnectionString))
            {
                try
                {
                    SqlCommand cmd = new SqlCommand(sql, conn);
                    if (conn.State == ConnectionState.Closed)
                    {
                        conn.Open();
                    }
                    SqlDataReader rdr = cmd.ExecuteReader(CommandBehavior.CloseConnection);
                    while (rdr.Read())
                    {
                        CityCode cityCode = new CityCode();
                        //cityCode._id = rdr["_id"] != null ? rdr["_id"].ToString() : "";
                        cityCode.Code         = rdr["Code"] != null ? rdr["Code"].ToString() : "";
                        cityCode.Name         = rdr["Name"] != null ? rdr["Name"].ToString() : "";
                        cityCode.SimplePinyin = rdr["SimplePinyin"] != null ? rdr["SimplePinyin"].ToString() : "";
                        cityCode.WholePinyin  = rdr["WholePinyin"] != null ? rdr["WholePinyin"].ToString() : "";
                        cityCode.Terminal     = rdr["Terminal"] != null ? rdr["Terminal"].ToString() : "";
                        listCityCode.Add(cityCode);
                    }
                    rdr.Close();
                }
                catch (SqlException ex)
                {
                    JoveZhao.Framework.Logger.WriteLog(JoveZhao.Framework.LogType.ERROR, "航班数据库查询[GetCityCode]", ex);
                }
                catch (Exception e)
                {
                    JoveZhao.Framework.Logger.WriteLog(JoveZhao.Framework.LogType.ERROR, "航班数据库查询[GetCityCode]", e);
                }
            }
            return(listCityCode);
        }
コード例 #11
0
 /// <summary>
 /// 身份证号码。
 /// </summary>
 /// <returns></returns>
 public override string ToString()
 {
     return(string.Concat(ProvinceCode.ToString("00"), CityCode.ToString("00"), County.ToString("00"), Birthday.ToString("yyyyMMdd"), SerialNumber.ToString("000"), CheckCode));
 }