首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >为什么使用.NET 4而不是.NET 2时“无法生成SQL Server的用户实例”?

问为什么使用.NET 4而不是.NET 2时“无法生成SQL Server的用户实例”?
EN

Stack Overflow用户
提问于 2010-10-11 03:24:04
回答 2查看 231关注 0票数 1

我已经在我的本地机器上用visual studio中的targetframework 4创建了一个简单的网站,它使用默认模板(这里解决了css问题的那个Google Maps API in ASP.NET Masterpage: why it stays blank?)。

我将其上传到我的IIS7服务器上,该服务器最初是为.NET 2配置的,因此在web.config中,我删除了该行

代码语言:javascript
复制
<compilation debug="false" targetFramework="4.0" />

这样它就可以在.NET 2上运行。

在此之前,这是很好的。

然后我在ISS7中编辑我的网站以使用.NET 4。当再次测试该网站时,我收到以下错误:

代码语言:javascript
复制
Failed to generate a user instance of SQL Server due to 
failure in retrieving the user's local application data path.

我还没有告诉你我还没有安装任何sql server,所以这个消息可能是正常的,但是为什么我在.NET 2中没有得到它呢?我是否可以像在.NET 2中一样,在.NET 4中配置一些东西,以便忽略此错误?

EN

回答 2

Stack Overflow用户

发布于 2010-10-11 04:18:48

当用户第一次登录时,将在磁盘上创建配置文件,例如,在c:\users\username中。

如果您处于用户的安全上下文中,而该用户从未以创建配置文件的方式登录到该计算机,并且您尝试将信息写入配置文件,则会得到一种“目录不存在错误”。

.net 2和4之间的安全上下文必须有所不同。

票数 1
EN

Stack Overflow用户

发布于 2010-10-11 08:49:21

很难理解你在做什么,为什么要做

“我还没有告诉您我还没有安装任何sql server”

Visual Studio (VS)安装SQL Server Express (默认情况下,配置为仅供本地使用,应启用远程),但IIS7、ASP.NET或Windows不安装

“我在本地机器上用visual studio中的targetframework 4创建了一个使用默认模板的简单网站”

如果你创建了一个针对ASP.NET4.0的项目,你不能在ASP.NET 2.0上运行它(反之亦然,在为2.0创建的4.0中运行)

哪个默认模板?它们是在VS设置之后或期间在VS中配置的

“无法生成SQL Server的用户实例”

SQL Server的用户实例是在VS2010 targeting 4.0中创建ASP.NET项目时创建的,这在上载的计算机上是没有的(您可以检查ASP.NET成员的文件夹和文件是否已使用SQL Server User实例创建)。它们不是由项目目标2.0创建的

创建ASP.NET 4.0项目,然后在ASP.NET2.0机器上测试它的意义是什么?从头开始创建它,目标是2.0。

--更新:

这是称为向后兼容性的常见软件原则-软件知道并可以适应以前的(在2.0中对于3.0,1.0,1.1),但不能适应未来的差异(在2.0中对于4.0)

http://en.wikipedia.org/wiki/Backward_compatibility

您可以创建目标为2.0的项目,并在以后更改为4.0,或者如果您对Visual Studio感到不舒服,也可以完全不使用它。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/3901833

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档