未找到数据源名称且未指定默认驱动程序

时间:2010-07-20 20:20:22

标签: asp.net mysql visual-web-developer

错误

  

错误[IM002] [Microsoft] [ODBC驱动程序管理器]未找到数据源名称且未指定默认驱动程序

故事

我在Visual Web Developer 2010之外编写了一个页面,它使用了一个SqlDataSource对象以及一个完美的FormView对象。基于我获得的那些非常棒的技能,我开始在Visual Web Developer中构建一个项目,这次创建一个空的Web应用程序,并以愉快的方式构建我的新站点。我使用了与以前相同的技术和几乎相同的代码 - 只是指向不同的表但我遇到了上述错误消息。

令人困惑的部分

这是令人费解的部分 - 如果我把我的页面写在Visual Web Developer之外,再次 - 它完美无缺 - 没有抱怨,并将其作为页面添加到我已经构建的项目中现在呈现相同的错误消息我不明白为什么。

测试已完成

由于我目前没有使用任何特定的4.0控件或方法,因此我退出了针对.NET 4.0框架并转到2.0。我把我最初给我问题的页面带到了Visual Web Developer项目之外,并将其作为一个独立的页面重新创建,完全相同的代码 - 复制,剪切,粘贴 - 完美无缺!

解决方案......

此时我感到困惑,嘴巴张开。任何帮助都表示赞赏为什么在Visual Web Developer中构建项目会导致任何不同。

2 个答案:

答案 0 :(得分:0)

如果您在Visual Web Developer / Visual Studio /等中运行(例如调试)项目,则可能使用嵌入式Web服务器运行。嵌入式Web服务器将自身置于“沙箱”中,因此它不会继承顶层应用程序/网站中设置的任何属性。

您在哪里为SQL连接配置数据源名称?在顶级网站?在父应用程序中?

如果将项目属性更改为目标本地IIS而不是在嵌入式Web服务器上运行,它是否有效?

如果是这样,您只需将连接字符串移动到本地web.config文件,以便新应用程序可以找到它。

答案 1 :(得分:0)

我应该学会阅读我在两周前发布的问题的答案。

MySQL ODBC fails in C# .NET project but not runtime compiled code

将connectionString更新为

  

DRIVER = {MySQL ODBC 5.1驱动程序};

而不是

  

DRIVER = {MySQL ODBC 3. Driver};

一旦我修复了一个愚蠢的SQL插入语句问题,

似乎已经纠正了这个问题。

感谢帮助mwalker。