我有一个文本框可根据员工姓名和下拉列表进行搜索,以便根据员工类型进行搜索。如果输入了工作人员姓名,则应根据txtbox文本加载转发器,如果选择了下拉列表,则加载与该特定选定值相关的数据。如果两者都存在,如果输入了文本框值,并且选择了下拉列表,则根据这两个数据加载转发器。
以下是搜索选项的代码段。
int stype = int.Parse(ddlStafType.SelectedValue);
if (txtsearchname.Text == "" && ddlStafType.SelectedValue == "0")
{
idLoadData();
}
else
{
using (iSchoolDBEntities db = new iSchoolDBEntities())
{
var details = (from si in db.School_StaffInfo
join st in db.iSchool_StaffType on si.StaffTypeID equals st.StaffTypeID
where ((si.SchoolID == schlid) && (si.isDeleted != true)) && ((si.StaffName.StartsWith(txtsearchname.Text)) && (si.StaffTypeID == stype) && ((si.StaffTypeID == stype) || (si.StaffName.StartsWith(txtsearchname.Text))))
select new
{
si.StaffID,
si.StaffName,
si.EmployeeCode,
st.StaffType,
si.UserName
});
RptallStaff.DataSource = details.ToList();
RptallStaff.DataBind();
}
}