2016-07-22 61 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

在你的代碼中,你用「」替換了「 - 」,並且在你的搜索字符串中也是這樣。但根據您的要求,您需要將「」與「」更改爲您的數據庫條目。

試着做這樣的事情:

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

希望幫助!

+0

但是,.Replace只替換第一個實例。如果我有3個逗號,那麼.Replace將只刪除第一個。 – Dan

+1

@丹你確定嗎?我認爲替換會替換所有匹配的元素。你試過了嗎? –