拼写检查 - >正确的拼写单词添加到列表框/列表

时间:2017-04-06 09:31:51

标签: c# spelling

用户需要告诉程序他想要在披萨上有什么,所以程序能够检查数据库中是否有匹配的披萨。因为我需要正确拼写的成分。我该如何管理?我不想对每种成分进行硬编码。

string[] RePr_Salami = new string[6] {"salami", "salame", "slami", "salmi", "salam", "alami"};
string[] RePr_Kaese = new string[6] {"käse", "kaese", "äse", "käs", "cheese", "kase"};

这是我的两个萨拉米和芝士阵列。

private void Rechtschreibung_Zutat_Adden()
{
    //RePr Salami
    if (RePr_Salami.Any(tb_Zutat_oder_Belag_Adden.Text.Contains))
    {
        lb_Zutaten_ausgewaehlt.Items.Add("Salami");
    }
    //RePr Käse
    if (RePr_Kaese.Any(tb_Zutat_oder_Belag_Adden.Text.Contains))
    {
        lb_Zutaten_ausgewaehlt.Items.Add("Käse");
    }
    //else if für alles andere, nicht erkannte
    else if (!RePr_Salami.Any(tb_Zutat_oder_Belag_Adden.Text.Contains) && !RePr_Kaese.Any(tb_Zutat_oder_Belag_Adden.Text.Contains))
    {
        lb_Zutaten_ausgewaehlt.Items.Add(tb_Zutat_oder_Belag_Adden.Text);
    }
}

这是硬编码的拼写检查。但我不想重复这个星球上所有可用的成分。

有没有简单的方法来添加库dll或其他东西?

1 个答案:

答案 0 :(得分:0)

好吧,让我试着告诉你解决问题的方法,我们从那里开始:

如果我理解正确,您将拥有一个元素(成分)系统,并以正确的翻译显示给用户。对于每个翻译,您都有一个"可能"匹配,以防用户输入错误。

我相信你不应该存储"字符串"硬编码,但相反在数据库(如果可能),如果不是,然后添加到XML文件(或其他类型),它允许您动态加载他们而无需重新启动应用程序/网站/等.....

例如:   - 我假设用户可以设置自己的文化/显示语言。   - 然后,由于您知道要处理的语言,只需加载正确的文件数据(或从数据库加载"列表")。您还可以为此添加缓存逻辑。

示例

  • (XML文件)Trans_EN.xml,Trans_DE.xml,Trans_FR.xml,Trans_RUS.xml等....
  • 或表:成分,表:培养物,表:成分翻译(IngId,CulId,DisplayValue),IngredienteTranslatedVariances(IngTransId,CloseValue)。