Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/88.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 删除/替换国际字符_C#_Sql_Character Encoding - Fatal编程技术网

C# 删除/替换国际字符

C# 删除/替换国际字符,c#,sql,character-encoding,C#,Sql,Character Encoding,我正在用C#创建一个小应用程序,根据SQL查询传递的信息搜索文件名。在从SQL查询传递的数据中,有时(可能由于我公司的国际访客而有多个实例)会有带有国际字符的名称。我们的文件名是英文字母表,没有特殊字符 我正在试图找到一种方法,将国际字符转换为纯英语字母字符,以便我可以完成此搜索?这可以通过db查询完成,还是必须通过应用程序代码完成 例如: Hervé需要转换成Herve 或 如果您运行的是MS-SQL server,则需要将Manana转换为Manana,请参阅联机帮助中的“整理”。您可以在功

我正在用C#创建一个小应用程序,根据SQL查询传递的信息搜索文件名。在从SQL查询传递的数据中,有时(可能由于我公司的国际访客而有多个实例)会有带有国际字符的名称。我们的文件名是英文字母表,没有特殊字符

我正在试图找到一种方法,将国际字符转换为纯英语字母字符,以便我可以完成此搜索?这可以通过db查询完成,还是必须通过应用程序代码完成

例如:

Hervé需要转换成Herve


如果您运行的是MS-SQL server,则需要将Manana转换为Manana,请参阅联机帮助中的“整理”。您可以在功能上动态更改编码。

我正在针对SQL server运行,但是,我正在代码中运行动态SQL。但感谢您提供的整理,我将在querybuilder中研究如何实现这一点
var s1 = ToASCII("Hervé");
var s2 = ToASCII("Mañana"); 

string ToASCII(string s)
{
    return String.Join("",
         s.Normalize(NormalizationForm.FormD)
        .Where(c => char.GetUnicodeCategory(c) != UnicodeCategory.NonSpacingMark));
}