是否可以将英语和日语存储在同一个字段中?该字段的类型为NVARCHAR(1024)。我看到的唯一问题是问号。
我在表格中添加了另一个字段,并将其整理为日语。这似乎有效。但我不想要2列,我只想要1.
无处不在,我读到NVARCHAR可以在不更改默认排序规则的情况下保存unicode,这是真的吗?如果是这样,我怎么告诉EF它是英语还是日语?
答案 0 :(得分:0)
您可以通过实体框架检查您希望在DB中保存的字符串的加密,然后决定保存它的位置!
为了解决这个问题,我建议你使用Encoding.GetEncoding Method(String)来实现它。
这是一个功能,你可以测试它,让我知道它是否有效。
public static bool IsUnicode(string input)
{
foreach (char chr in input)
{
string str = chr.ToString();
Encoding code = Encoding.GetEncoding("GB18030");
if (code.GetByteCount(str) == 2)
{
return false;
}
}
return true;
}
And here is my test result:
string zh = "微软";
string en = "Microsoft";
bool Izh = IsUnicode(zh); //return false
bool Ien = IsUnicode(en); //return true
对于方法中的参数,您可以访问http://msdn.microsoft.com/zh-cn/library/aa332097(VS.71).aspx处的MSDN以获取正确的字符串。
最诚挚的问候, Nader SGHIR