2011-08-26 79 views
3

我想UTF8支持添加到我的实体框架的数据库应用程序(SQL Server 2008 R2中)的EntityFramework的ConnectionString UTF8

我想我需要的字符集添加到ConnectionString中。

这是我的connectionString是如何工作的(匿名,当然)

<add name="MyContainer" connectionString="metadata=res://*/MyDatabase.csdl|res://*/MyDatabase.ssdl|res://*/MyDatabase.msl;provider=System.Data.SqlClient;provider connection string=&quot;Data Source=myserver\instancename;Initial Catalog=MyCatalog;Persist Security Info=True;User ID=USERNAME;Password=PASSWORD;MultipleActiveResultSets=True;&quot;" providerName="System.Data.EntityClient" /> 

我看了一下connectionstrings.com,但是我发现有关UTF8什么。

我试着加入charset=utf8,但这并没有办法。

<add name="MyContainer" connectionString="metadata=res://*/MyDatabase.csdl|res://*/MyDatabase.ssdl|res://*/MyDatabase.msl;provider=System.Data.SqlClient;provider connection string=&quot;Data Source=myserver\instancename;Initial Catalog=MyCatalog;Persist Security Info=True;User ID=USERNAME;Password=PASSWORD;MultipleActiveResultSets=True;charset=utf8;&quot;" providerName="System.Data.EntityClient" /> 

导致System.Data.EntityException: { “底层提供对ConnectionString的失败。”} { “不支持关键字: '字符集'”}

问:
如何在连接字符串中将字符集设置为utf8?还是默认启用utf8?

回答

3

unicode的用法由变量或列类型定义。 Charvarchar是非Unicode,ncharnvarchar是unicode(UCS-2)。

还有一些排序规则定义了代码页的charvarchar列以及比较和排序字符串的方式。每个数据库都有默认的排序规则,每个列或变量都可以明确定义其他排序规则。

字符集未通过连接进行配置。