System.Data.OleDb.OleDbException错误

当您连接到 Microsoft Access 数据库从 Microsoft ASP.NET 应用您收到以下错误信息:

System.Data.OleDb.OleDbException: 错误
在模拟的帐户下运行 ASP.NET Web 应用程序具有 模拟 元素在 Web.config 文件中设置为 true ,并且已在 Web.config 文件中中, 设置 Windows 身份验证 元素。 在 ASP.NET Web 应用程序中代码连接到 Access 数据库中。 建立连接时, Microsoft Jet OLE DB 以下目录中在临时文件夹中创建临时文件:
文档和 Settings/ ServerName /ASPNET/Local 设置
其中, ServerName 是服务器的名称。

如果模拟的用户帐户不具有在 Temp 文件夹中启用的读 / 写权限,您将收到"症状"一节中提到错误消息。
要解决此问题,启用模拟的用户帐户在 Temp 文件夹的读 / 写权限。 要这样做,请按下列步骤操作:
  1. WindowsXP、Windows 2003用户请在“C:/Windows/Temp”目录添加一个有权限的“Authenticated Users”用户即可!
    Vista用户请在“C:/Windows/ServiceProfiles/NetworkService/AppData/Local/Temp”目录添加一个有权限的“Authenticated Users”用户即可!

    具体设置权限步骤:右击Temp文件夹,选择“属性”->“安全”->“编辑”->“添加”,在下面的“输入对象名称来选择”中输入Authenticated Users,确定 -> 返回到“Temp 的权限”,将Authenticated Users的权限中的完全控制给勾上。
    右键单击 Temp 文件夹,然后单击 属性
  2. 属性 对话框单击 安全 选项卡。
  3. 安全 选项卡上单击 添加 ,然后键入 ServerName / UserAccount选择用户或组 文本框中,其中 ServerName 是您的服务器的名称,其中 UserAccount 是模拟的帐户的名称。 单击 确定
  4. 单击以选中 读取 写入 下复选框,然后单击 确定
重现该问题的步骤
<script type="text/javascript"></script>
  1. 创建新的 ASP.NET Web 应用程序。 要这样做,请按下列步骤操作:
    1. 启动 Microsoft Visual Studio.NET。
    2. 创建新的 Microsoft Visual C#.NET 或新的 Microsoft Visual Basic.NET ASP.NET Web 应用程序。 将该项目命名 SampleApplication
    3. 该代码在 SampleApplication 文件连接到 Access 数据库的写入。
  2. 身份验证 模式设置为 Windows 中。 要这样做,请按下列步骤操作:
    1. 在解决方案资源管理器中,双击 Web.config
    2. 在该 <System.web>部分中,按以下方式修改 authentication 元素:
        <authentication mode="Windows" /> 
  3. 模拟 元素设置为 true 。 要这样做,请按下列步骤操作:
    1. 在该 <System.web>部分,如下所示添加 模拟 元素:
      <identity impersonate="true" />
      
    2. 保存,并关闭 Web.config 文件。
  4. 生成 菜单中上, 单击 生成 SampleApplication
  5. 对应用程序设置 身份验证 方法。 要这样做,请按下列步骤操作:
    1. 单击 开始 ,然后单击 运行
    2. 打开 文本框中键入 inetmgr ,然后单击 确定
    3. Internet Information Services 对话框,单击 默认 Web 站点
    4. 右键单击 SampleApplication ,然后单击 属性
    5. SampleApplication 属性 对话框单击 目录安全性 选项卡。
    6. 匿名访问和身份验证控制 ,下单击 编辑
    7. 在此 身份验证方法 对话框单击以选中 匿名访问 复选框。 请确保 用户名称 文本框具有该 UserAccount 值的 UserAccount 是一个 Windows 帐户。 单击 确定 两次,然后关闭 Internet Information Services 对话框。
    8. 请确保的读 / 写权限 UserAccount 未启用以下文件夹中:
      文档 settings/ ServerName /ASPNET/Local Settings/Temp
    请注意 IIS 使用下列身份验证方法进行身份验证 ASP.NET Web 应用程序:
    • 匿名身份验证 : IIS 使用 IIS 匿名用户帐户 (默认帐户是 IUSR _ computername)。
    • 集成的身份验证 : IIS 使用当前登录的用户的用户帐户。
    • 基本身份验证 : IIS 使用指定用户的帐户。
  6. 运行该应用程序。 为此,键入 http:// <ServerName > /SampleApplication/Webform1.aspx在 Web 浏览器 地址 栏中,然后单击 转到
  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值