我正在使用带有SQL Server的SubSonic进行测试,一切都很好。
我决定安装MySQL并进行相同的测试,但现在我有一点问题
我的表名是SQL Server中的ClienteEndereco,但是当我在web.config中进行更改以使用MYSQL并重新编译程序时,表名来自Clienteendereco
SQL Server = Cliente**E**ndereco
MySql = Cliente**e**ndereco
我尝试使用regexIgnoreCase="true"
但没有任何反应。
任何人都可以帮忙解决这个问题吗?如何在SQL Server和MySql中制作亚音速“忽略大小写”?
谢谢。
<add name="mssql"
type="SubSonic.SqlDataProvider, SubSonic"
connectionStringName="mssql"
fixPluralClassNames="false"
generatedNamespace="ModeloDados"
regexMatchExpression="A-Za-z"
regexIgnoreCase="true"
removeUnderscores="false"
setPropertyDefaultsFromDatabase="true"
generateNullableProperties="true"
useExtendedProperties="true"
useUtc="true"/>
答案 0 :(得分:0)
Pawel指出Windows上的MySQL和OS X默认情况下仅使用表的小写名称。您可以使用配置选项来更改此行为。以下博客文章简要概述:
答案 1 :(得分:0)
我创立了一种方式..我使用了“regexDictionaryReplace”。这种方式适用于mysql和mssql
<add name="mysql" type="SubSonic.MySqlDataProvider, SubSonic"
regexDictionaryReplace="Empresaendereco,EmpresaEndereco"
fixDatabaseObjectCasing="true" connectionStringName="mysql"
generateRelatedTablesAsProperties="true"
fixPluralClassNames="false"
generatedNamespace="ModeloDados"
regexIgnoreCase="true"
removeUnderscores="false"
setPropertyDefaultsFromDatabase="true"
generateNullableProperties="true"
useExtendedProperties="true"
useUtc="true" />
感谢您的帮助!!!