2016-07-22 1 views
0

데이터베이스의 쉼표가 포함 된 텍스트를 검색하려고하지만 참조에 쉼표가 없습니다.엔터티 프레임 워크를 사용하여 쉼표 제거 검색

예를 들면. "컴퓨터 프로그램의 개발, 전자 게임 등"

그래서, 내가 참고로 다음 문자열을 사용하여 데이터를 검색하려고 : 데이터베이스에서 나는 다음과 같은 값이

"전자 게임 등 컴퓨터의 개발 프로그램"

참고 유일한 차이점은 텍스트에 쉼표가 있지만 검색을위한 내 참조에는 없습니다.

public async Task<ActionResult>Index(string nomeServico) 
{ 
    using (MyDB db = new MyDB()) 
    { 
    // 1st We receive the following string:"development-of-computer-programs-including-electronic-games" 
    // but we remove all "-" characters 
    string serNome = nomeServico.RemoveCaractere("-", " "); 

    // we search the service that contains (in the SerName field) the value equal to the parameter of the Action. 
    Servicos servico = db.Servicos.FirstOrDefault(c => c.SerNome.ToLower().Equals(serNome, StringComparison.OrdinalIgnoreCase)); 
    } 
} 

문제는 데이터베이스에 데이터가 쉼표를 포함하고 있다는 것입니다, 그리고 검색 값에,하지 :

여기 내 코드입니다.

답변

1

코드에서 "-"를 ""로 바꾸고 검색 문자열에도 "-"을 사용합니다. 하지만 귀하의 요구 사항에 따라 귀하의 DB 항목에 대해 "," "로 변경해야합니다.

같은 일을보십시오 : 도움이

string serNome = nomeServico.ToLower(); 
Servicos servico = db.Servicos.FirstOrDefault(c => c.SerNome.Replace(",","").ToLower() == serNome); 

희망을!

+0

그러나 .Replace는 첫 번째 인스턴스 만 바꿉니다. 3 개의 쉼표가 있으면 .Replace는 첫 번째 쉼표 만 제거합니다. – Dan

+1

@ Dan 당신은 그것에 대해 확신합니까 ?? 교체가 모든 일치 요소를 대체한다고 생각합니다. 너 해봤 니? –

관련 문제