public static DataTable ReportsCityFilter(DateTime dtStart, DateTime dtEnd)
{
//Dictionary objDic = new Dictionary();
Dictionary objDic = new Dictionary();
objDic.Add("@start_date", dtStart);
objDic.Add("@end_date", dtEnd);
return dal.execute(objDic, "sp_admin_reports_city_filter_select").Tables[0];
}
我有一个页面,我有城市报告,现在我添加了一个下拉列表按日期过滤结果,即周,今天,月,年等
其他一切都在工作,但是这段代码有问题,因为它给了我错误“从字符串转换日期和/或时间时转换失败了” .
附:这是我的存储过程
ALTER PROCEDURE [dbo] . [sp_admin_reports_city_filter_select] - 在此处添加存储过程的参数 - @ id INT = NULL @start_date DateTime,@ end_date DateTime AS BEGIN --declare @startdate datetime set @start_date ='2999-01- 01'
if @start_date = 'today'
begin
select jp.id, city.name[City]
, row_number() over (order by city.name) [sr_no]
, count(jp.id) over (partition by name) as no_of_posts
, COUNT(od.id) over (partition by name) as no_of_employers
,CONVERT(varchar(12), jp.posting_date, 103) [date_created]
from rs_job_posting jp
inner join rs_job_posting_location jpl on jpl.id = jp.id
inner join rs_cor_city city on city.id = jpl.city_fk
inner join rs_organization_detail od on od.id = jp.id
where DAY(posting_date) = DAY(GETDATE())
order by no_of_posts Desc
select jp.date_updated
from rs_job_posting jp
END
else if @start_date = 'weekly'
begin
select jp.id, city.name[City]
, row_number() over (order by city.name) [sr_no]
, count(jp.id) over (partition by name) as no_of_posts
, COUNT(od.id) over (partition by name) as no_of_employers
,CONVERT(varchar(12), jp.posting_date, 103) [date_created]
from rs_job_posting jp
inner join rs_job_posting_location jpl on jpl.id = jp.id
inner join rs_cor_city city on city.id = jpl.city_fk
inner join rs_organization_detail od on od.id = jp.id
where DAY(posting_date) = DAY(GETDATE())
order by no_of_posts Desc
select jp.date_updated
from rs_job_posting jp
end
else if @start_date = 'byweekly'
begin
select jp.id, city.name[City]
, row_number() over (order by city.name) [sr_no]
, count(jp.id) over (partition by name) as no_of_posts
, COUNT(od.id) over (partition by name) as no_of_employers
,CONVERT(varchar(12), jp.posting_date, 103) [date_created]
from rs_job_posting jp
inner join rs_job_posting_location jpl on jpl.id = jp.id
inner join rs_cor_city city on city.id = jpl.city_fk
inner join rs_organization_detail od on od.id = jp.id
where DAY(posting_date) = DAY(GETDATE())
order by no_of_posts Desc
select jp.date_updated
from rs_job_posting jp
end
else if @start_date = 'monthly'
begin
select jp.id, city.name[City]
, row_number() over (order by city.name) [sr_no]
, count(jp.id) over (partition by name) as no_of_posts
, COUNT(od.id) over (partition by name) as no_of_employers
,CONVERT(varchar(12), jp.posting_date, 103) [date_created]
from rs_job_posting jp
inner join rs_job_posting_location jpl on jpl.id = jp.id
inner join rs_cor_city city on city.id = jpl.city_fk
inner join rs_organization_detail od on od.id = jp.id
where DAY(posting_date) = DAY(GETDATE())
order by no_of_posts Desc
select jp.date_updated
from rs_job_posting jp
end
else if @start_date = 'yearly'
begin
select jp.id, city.name[City]
, row_number() over (order by city.name) [sr_no]
, count(jp.id) over (partition by name) as no_of_posts
, COUNT(od.id) over (partition by name) as no_of_employers
,CONVERT(varchar(12), jp.posting_date, 103) [date_created]
from rs_job_posting jp
inner join rs_job_posting_location jpl on jpl.id = jp.id
inner join rs_cor_city city on city.id = jpl.city_fk
inner join rs_organization_detail od on od.id = jp.id
where DAY(posting_date) = DAY(GETDATE())
order by no_of_posts Desc
select jp.date_updated
from rs_job_posting jp
end
结束