mySQL放在linux服务器 .NET程序使用的EF连接mySQL,放在windows服务器引起的错误:
{MySql.Data.MySqlClient.MySqlException (0x80004005): Table 'heyou.Orders' doesn't exist at MySql.
这是由于Linux系统对于大小写敏感而windows对于名称对象大小不区分对待而造成的,因linq生成的语句里,会把EF上下文中的表名(无论EF中的 Table属性的大小写如何,比如:[Table("orders")])变成大写开头,如果存放在Linux中的表刚好是小写开头,则会报上述错误,解决办法是把所有表都改成大写开头,如:
alter table orders rename Orders
即可