C#Entity Framework创建mysql数据库中报错: System.ArgumentException:“不支持关键字: “port”

  最近写winform程序时候,由于并不经常写.net程序,遇到一个问题,我开发的语言用的是C#,开发工具VS,但是用EF框架创建mysql数据库的时候,遇到一个问题,连接字符串的时候,报错

 

System.ArgumentException:“不支持关键字: “port”。”

 

找到了有三种解决方案,我采取的是第三种,亲测可用:

 

第一:更改defaultConnectionFactory配置:

1
<defaultConnectionFactory type="MySql.Data.Entity.MySqlConnectionFactory, MySql.Data.Entity.EF6"></defaultConnectionFactory>

  

第二种:使用命名配置连接字符串并明确指定提供者:
1
2
3
<connectionStrings>
    <add name="XXDB" providerName="MySql.Data.MySqlClient" connectionString="server=myservername;port=3306;uid=myaccount;database=mydb;pwd=mypwd123" />
</connectionStrings>

   并且更改构造函数

1
2
3
4
public XXDB()
{
    // ...
}

  

第三种:
使用DbConfigurationTypeAttribute :

DbConfigurationTypeAttribute
1
2
3
4
5
[DbConfigurationType(typeof(MySql.Data.Entity.MySqlEFConfiguration))]
public class XXDB : DbContext
{
    // ...
}

  





 

posted @   heyhx  阅读(3829)  评论(0编辑  收藏  举报
编辑推荐:
· 深入理解 Mybatis 分库分表执行原理
· 如何打造一个高并发系统?
· .NET Core GC压缩(compact_phase)底层原理浅谈
· 现代计算机视觉入门之:什么是图片特征编码
· .NET 9 new features-C#13新的锁类型和语义
阅读排行:
· Sdcb Chats 技术博客:数据库 ID 选型的曲折之路 - 从 Guid 到自增 ID,再到
· 语音处理 开源项目 EchoSharp
· 《HelloGitHub》第 106 期
· Spring AI + Ollama 实现 deepseek-r1 的API服务和调用
· 使用 Dify + LLM 构建精确任务处理应用
点击右上角即可分享
微信分享提示