在我的數據庫中,我有表包含文件名模式的表。C#SQL到LINQ模式匹配
格局數據庫:
PKO??_??_??????_*.TXT
文件名:
PKO10_11_123456_example.TXT
現在,當一些文件導入到我的計劃,我需要匹配它在數據庫中的這些模式。我知道Directory.GetFiles()
有這個選項來添加模式,它會返回所有與這個模式匹配的文件。有沒有辦法在LINQ查詢中做到這一點?我試圖Containes()
這樣的:
var _cardType = (from type in context.OCA_CARD_TYPEs
where type.FILENAME.ToLower().Contains(fileName.ToLower())
select type).Single();
但喜歡,我沒有得到任何比賽。
在我的案例中,'filename'是文件的全名,模式存儲在數據庫中。 – hs2d
@ hs2d「模式存儲在數據庫」所以?只需加載它們,將它們轉換爲SQL所需的('_'和'%',考慮到轉義字符),並使用它...大約3次調用'string.Replace'應該做到這一點...... –