일부 조건을 구문 분석하기 위해 동적 linq를 사용하고 있습니다. 나는 저장 프로 시저를 작성하고 그것을 동적으로 필터링하고 싶다. '포함'은 문자열과 함께 작동하지 않습니까?
이
내 절차 :;WITH cte
AS
(
SELECT
ID
,[NO]
,Firstname
,Lastname
,PersonalNO
,ReferanceID
,CAST('' AS VARCHAR(MAX)) AS ReferanceNO
FROM dbo.Employees WHERE ReferanceID IS NULL
UNION ALL
SELECT
c.ID
,c.[NO]
,c.Firstname
,c.Lastname
,c.PersonalNO
,c.ReferanceID
,CASE
WHEN ct.ReferanceNO = ''
THEN CAST(ct.[NO] AS VARCHAR(MAX))
ELSE CAST(ct.[NO] AS VARCHAR(MAX))
END
FROM dbo.Employees c
INNER JOIN cte ct ON ct.ID = c.ReferanceID
)
SELECT * FROM cte
및 C#에서 나는이 프로 시저를 호출하고,
public List<Employees> GetEmployees(string searchValue, int skip, int pageSize, string sortColumn, string sortColumnDir)
{
var query = DB.sp_GetConsultants().ToList();
var totalRecords = query.Count;
query = query.Where(searchValue).ToList(); // if the searchValue is value
//"PersonalNO.Contains(\"15\")" it filters, with this kind of value
//"Lastname.Contains(\"fish\")" it dose not, but with "Fish" it does. Is the matter with uppercase?
}
와 나는 테이블에 사진 업로드 :
문제가 무엇입니까?
전체'query' 목록의 내용을 인쇄하거나 디버거를 사용하여 열거하면 어떻게됩니까? 아마도 저장 프로 시저에 문제가있을 수 있으며 John Fisher도 포함되지 않은 것입니까? – ekolis
죄송합니다. 다시 작성했습니다. – www1986