如何更改实体框架使用的数据库 - 架构(mysql 数据库)?

2023-12-08

我在项目中使用EntityFramework连接Mysql数据库。提供商是 Devart Dot.connect。

该应用程序需要使用用户在运行时给出的连接参数连接到数据库。这当然包括 Mysql 数据库名称。

我使用 EntityConnectionStringBuiler 和 EntityConnection 类来构建和存储自定义连接参数。

问题是,即使使用这样的给定参数,应用程序也始终连接到使用 Visual Studio 向导设计 EntityModel 时指定的数据库。 非常奇怪的是,在调试和检查ObjectContext的状态时,自定义的连接参数被正确使用...... 这让我很生气!!!! 有什么线索吗?


在这个问题上花了一天时间后,我终于明白问题出在 model.edmx 文件上。

在此文件中,每个 EntitySet 有一行。 每个 EntitySet 元素上都有一个名为 schema 的属性。对于 SQL Server,此属性设置为相关表架构:

实体集名称=“annee_civile” EntityType =“openemisModel.Store.annee_civile” 商店:类型=“表”架构=“mydatabase”/>

如果您在构建自己的 EntityConnection 时提供了 Schema 的名称,则似乎存在冲突,并且最终,即使您在连接参数中指定了另一个 Schema,仍将使用 edmx 文件中定义的 Schema。

解决方案只需删除 edmx 文件中的架构名称即可。 这适用于 MYSQL,但在连接到 SQL 服务器时可能不适用。

实体集名称=“annee_civile” EntityType =“openemisModel.Store.annee_civile” store:Type="Tables" Schema="" />

EntityConnectionStringBuilder :

stringprovidedString =“用户ID=xxxx;密码=xxx;主机=xxxx;数据库=任意数据库名称”; EntityConnectionStringBuilderEntityConnBuilder = new EntityConnectionStringBuilder(); entityConnBuilder.Provider = "Devart.Data.MySql"; entityConnBuilder.Metadata = @"res:///OpenEmisModel.csdl|res:///OpenEmisModel.ssdl|res://*/OpenEmisModel.msl"; EntityConnBuilder.ProviderConnectionString =providedString;

EntityConnection 和使用它的对象上下文:

EntityConnectionEntityConnexionEmis = new EntityConnection(entityConnBuilder.ConnectionString);

objectcontextEntities testContext = new objectcontextEntities(entityConnexionEmis);

该软件现在可以连接到任何数据库名称。

希望这可以帮助。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何更改实体框架使用的数据库 - 架构(mysql 数据库)? 的相关文章

  • 无法在 CUDA 中找到 1 到 100 数字的简单和?

    我正在研究使用 CUDA 的图像处理算法 在我的算法中 我想使用 CUDA 内核找到图像所有像素的总和 所以我在cuda中制作了内核方法 来测量16位灰度图像的所有像素的总和 但我得到了错误的答案 所以我在cuda中编写了一个简单的程序来查
  • 如何反转散列和加盐密码? [关闭]

    Closed 这个问题不符合堆栈溢出指南 help closed questions 目前不接受答案 我正在使用 vBulletin 登录使用它来交叉引用数据库 md5 md5 pass salt 我如何制作一个 PHP 脚本 以便每个密码
  • 如何从经过身份验证的 SecurityToken 中获取声明

    我将令牌作为字符串传递到 SOAP 服务中 并验证了该令牌是否有效 我现在有一个 SecurityToken 在调试模式下我可以看到所有声明 特别是我想传递到另一个方法的 userId 声明 我似乎不知道如何获得这些索赔 现在 我解码了令牌
  • CMake(Ninja 后端)使用 /MT 编译

    我有一个类似的问题CMake 使用 MT 而不是 MD 进行编译 https stackoverflow com questions 14172856 cmake compile with mt instead of md但有一些差异 我正
  • 如何在 C++ 中为指针“this”赋值

    在函数中 如何分配this一个新的价值 您可以分配对象this点于 this XY 但你不能分配直接值this this XY Error Expression is not assignable
  • 自己绘制的WPF自定义滑块

    这是我关于堆栈溢出的第一个问题 所以不要踢它 我在尝试创建 Mac 风格的滑块控件时遇到问题 我已经发现这个解决方案 http www codeproject com KB miscctrl MAC Slider aspx我已经在我的解决方
  • 从图像创建半透明光标

    是否可以从图像创建光标并使其半透明 我目前正在拍摄自定义图像并覆盖鼠标光标图像 如果我可以将其设为半透明 那就太好了 但不是必需的 销售人员喜欢闪亮的 目前正在做这样的事情 Image cursorImage customImage Get
  • 使用任一默认捕获模式时,这是通过复制捕获还是 (*this) 通过引用捕获?是一样的吗?

    当我看到以下工作时我有点困惑 struct A void g void f g 但后来我发现this https stackoverflow com a 16323119 5825294答案非常详细地解释了它是如何工作的 本质上 它归结为t
  • PHP 插入中的 mysqli_affected_rows

    我有这个代码 if mail to subject message headers insert member sql INSERT INTO members id username VALUES id username insert me
  • 为什么这个位图图像在加载后会改变大小?

    快速提问 我有这个1000 1000位图图像 我使用这个例程来加载它 private BitmapSource initialBitmap new BitmapImage new Uri C Users Desktop Original b
  • Clang 5.0 上的 vsprintf 和 vsnprintf [-Wformat-nonliteral] 警告

    我有这段代码 static void err doit int errnoflag int level const char fmt va list ap int errno save unsigned long n char buf MA
  • 具有多个父项的 Qt 树模型

    我想构建一棵树 其中一个元素可以引用另一个元素 我想要构建的树是 像这样的东西 A B C D E F P this is a pointer to C D first child of C E second child of C I fo
  • 查找数组中的多个索引

    假设我有一个像这样的数组 string fruits watermelon apple apple kiwi pear banana 是否有一个内置函数可以让我查询 apple 的所有索引 例如 fruits FindAllIndex ap
  • 如何防止 Lotus Notes 用户转发或复制通过 System.Net.Mail 发送的邮件?

    我想使用 SMTP 客户端 uiing microsft net 以 C 作为编程语言发送电子邮件 但是对于通过SMTP客户端发送的电子邮件 我们是否可以添加 禁止转发 或 禁止复制 等安全功能 我不希望电子邮件的收件人转发或复制电子邮件的
  • Codeigniter,为MySQL创建表和用户

    我想以编程方式使用 CI 创建数据库和用户 到目前为止 我有这 2 个简单的 MySQL 语句 CREATE DATABASE testdb DEFAULT CHARACTER SET utf8 COLLATE utf8 general c
  • Join 表(关联表)有主键吗?多对多关系

    Join 表 关联表 有主键吗 多对多的关系 我见过一些带有主键的连接表 一些没有 有人可以解释一下连接表中何时会有主键吗 为什么 先感谢您 在纯 联接 或联结表中 所有字段都将成为主键的一部分 例如 让我们考虑下表 CREATE TABL
  • 跟踪白色背景中的白球(Python/OpenCV)

    我在 Python 3 中使用 OpenCV 来检测白场上的白 黑球 并给出它的精确 x y 半径 和颜色 我使用函数 cv2 Canny 和 cv2 findContours 来找到它 但问题是 cv2 Canny 并不总是检测到圆的完整
  • 选择具有按两列分组的最大值的行

    我见过很多关于此类问题的解决方案 尤其是这个SQL 仅选择列上具有最大值的行 https stackoverflow com questions 7745609 sql select only rows with max value on
  • 使用空的weak_ptr作为参数调用map::count安全吗?

    打电话安全吗map count http www cplusplus com reference map map count on an 未初始化因此为空weak ptr http en cppreference com w cpp mem
  • Adobe Illustrator 中的折线简化如何工作?

    我正在开发一个记录笔划的应用程序 您可以使用定点设备来绘制笔划 在上图中 我绘制了一个笔划 其中包含 453 个数据点 我的目标是大幅减少数据点的数量 同时仍然保持原始笔画的形状 对于那些感兴趣的人 上图笔画的坐标可以作为GitHub 上的

随机推荐

  • 与一个进程进行多次通信而不破坏管道?

    这不是我第一次遇到这个问题 而且它确实困扰着我 每当我使用 Python 打开管道时subprocess模块 我只能communicate正如文档所指定的那样 使用它一次 Read data from stdout and stderr u
  • Java 输入不起作用(初学者)

    由于某种原因 我的代码不接受最后一行的输入 您想订购什么 谁能告诉我我的错误是什么 它编译正确 一切顺利 我只是一个初学者 所以请告诉我基本术语 import java util Scanner import java util class
  • 添加带有 NSEventMaskKeyDown 掩码的全局监视器不会触发

    我正在开发一个 MacOS 菜单栏应用程序 它需要跟踪一些全局快捷方式 以便于调整外部显示器上的显示亮度 但是 我无法让它在任何键盘相关事件上触发处理程序 鼠标事件工作得很好 我正在使用以下代码检查可访问性 NSDictionary opt
  • 如何缓存解析的 JSON 以供离线使用

    我已经成功解析了 JSON 但现在我想缓存它以供离线使用 即使互联网不可用 如果有任何新条目出现 我也想缓存它 缓存数据的最佳选择是什么 SharedPreferences or SQLite database 这是我的代码 我用它来解析
  • Eclipse CDT 自动包含共享库

    我正在 Eclipse 中工作 Helios Service Release 1 使用 Eclipse CDT 使用 g 进行编译 我刚刚开始尝试在我的项目中使用共享库 但遇到了一个小问题 我有三个项目 A B 和 C A 和 B 都是共享
  • 是否可以用javascript或css实现overflow:ellipsis的效果?

    我想展示 when overflow发生 但遗憾的是在CSS中只有overflow hidden这接近但不完全是我想要的 可以实施吗 text overflow ellipsis See http www quirksmode org cs
  • 运行时错误 2448 您无法为此对象赋值

    我在用大卫 W 芬顿对此问题的回答尝试允许用户在单击控件时打印报告 但我收到以下错误消息 runtime error 2448 you cannot assign a value to this object 触发错误的代码行是 Me tx
  • 如何在grails中为createCriteria编写from和to日期的子句?

    我想使用以下代码获取两个日期之间的结果 def c TestCase createCriteria resultss c list like testStatus Dummy and between testTime date1 date2
  • 沿任一轴翻转 UIImage

    我正在尝试创建一种沿 X 轴 Y 轴或两者翻转 UIImage 的方法 我一直在接近 但我的变换知识还不够好 无法一路到达那里 这是我到目前为止的代码 UIImage flippedImageByAxis MVImageFlip axis
  • 如何将 OpenCV C++ 代码中的帧流式传输到 Video4Linux 或 ffmpeg?

    我正在尝试使用 OpenCV 处理视频流中的帧 目标是从流中获取帧 对其进行处理 然后将处理后的帧放入新的 新鲜的流中 我已经能够使用 OpenCV 视频捕获功能成功读取流 但不知道如何使用处理后的帧创建输出流 为了进行一些基本测试 我使用
  • SCNNode子节点的总高度

    我目前正在使用以下方法来获取 a 中所有子节点的总高度SCNNode 有没有更有效 更好 更短 更快速的方法来做到这一点 CGFloat columnNode childNodes reduce CGFloat let geometry 1
  • 如何在 pygame 中绘制更详细/更平滑的图像?

    我一直在尝试进入矢量风格的艺术世界 最近我尝试使用 blit 方法对矢量图像进行位图传输 但是当我进行位图传输时 它会显示为像素化 这是图像 这是它在 pygame 中的样子 代码为 import pygame screen pygame
  • MIPS 汇编中的奇怪跳跃

    我可能在这里遗漏了一些非常明显的东西 但我已经一遍又一遍地讨论这个问题 而且我肯定被困住了 在下面的代码中 8仅当以下情况时才会递增 2 0 现在我仔细检查了两次和三次beq指令有效 例如 如果我将 lop 更改为 end2 它就会转到那里
  • Angular 2:引导之前的外部配置 - 将值传递给 AppModule

    我想从外部 json 文件配置我的 Angular 2 应用程序 In my main ts我加载配置 json getHttp get config json map response gt response json subscribe
  • 如何使行的值在两列中唯一?

    假设我有两列 A 列和 B 列 A 列是必需的 B 列是可选的 如果指定了 B 列 我想确保在其自身行之外的 B 列 简单 或 A 列 似乎更难 中找不到它的值 同样 如果 A 列发生更改 我想确保在其所在行之外的 B 列或 A 列中找不到
  • Vue Router 在启动时加载我所有的延迟加载组件

    我有一个 Vue vue 2 6 和 cli service 4 1 应用程序 其延迟加载路由器配置如下 路由器 ts const Grid gt import webpackChunkName grid views grid Grid v
  • 为什么我不能 .call() Function.call?

    在 JavaScript 中 Function call 可以打电话Function给定一个this值和零个或多个参数 Function call本身就是一个函数 所以理论上来说 Function call应该是相同 或类似作用 的功能Fu
  • 在oracle中垂直显示结果

    我很喜欢 mysql 的 G 功能 我发现它在从具有许多列的表中进行选择时非常有用 oracle中是否有类似的功能 可以将每一列显示在自己的行上 人们通常如何处理这个问题 I use Tom Kyte 的 print table 过程 例如
  • 如何访问Scrapy项目管道中的所有已抓取项目?

    我有一个项目有一个排名字段 必须通过分析其他项目类来构建 我不想使用数据库或其他后端来存储它们 我只需要访问所有当前抓取的项目并对它们执行一些 itertools 魔法 我如何在蜘蛛完成后但在导出数据之前执行此操作 因此排名字段获胜不要为空
  • 如何更改实体框架使用的数据库 - 架构(mysql 数据库)?

    我在项目中使用EntityFramework连接Mysql数据库 提供商是 Devart Dot connect 该应用程序需要使用用户在运行时给出的连接参数连接到数据库 这当然包括 Mysql 数据库名称 我使用 EntityConnec