对MDB文件的访问,而不需要在asp.net中访问文件系统

本文关键字:访问 asp net 文件系统 不需要 MDB 文件 | 更新日期: 2023-09-27 18:04:27

我有一个来自第三方程序的输入MDB文件。我必须在我的asp .net应用程序中读取它,然后向最终用户请求一些相关的表单。

目前,我可以在文件系统上写入mdb文件并读取它,它工作,但有时此功能不起作用,我必须重新启动服务器。

客户想要外部化服务器,我不能写入文件系统,甚至重新启动它,所以我想从MemoryStream中读取asp .net中的mdb文件,或者可能执行转换为最易读的格式,如XML,但我认为这是不可能的。

所以我正在寻找一个解决方案来预处理访问文件。

我不认为这是可能的阅读它通过javascript(只有vbscript)。

我能想到的唯一办法是:

  • 调用一个特殊的应用程序,url代码如app://id id被传送到一个特殊的应用程序在桌面上,他会选择他的文件和内容将通过web服务传输到web应用程序

  • 之后,人应该点击一个按钮,他可以处理与该数据相关的不同形式

听起来对最终用户来说有点复杂

有人对那件事有什么看法吗?

编辑

mdb文件通过包含在web表单中的http表单上传。

有时,上传后,应用程序抛出一个异常,它不能使用c:'windows'temp。我有一个错误:不能访问指定的文件。

我没有更好的信息,因为应用程序位于客户的内部网络中,而我不在那里。所以我必须让他们重新启动它

对MDB文件的访问,而不需要在asp.net中访问文件系统

引言:为Access Database配置权限

当Web应用程序使用Access数据库时,应用程序必须有读权限的.mdb文件,以便应用程序可以访问数据。此外,应用程序必须具有写权限包含.mdb文件的文件夹。需要写权限因为Access创建了一个扩展名为.ldb的附加文件其中,它为并发维护有关数据库锁的信息用户。ldb文件是在运行时创建的。[…]因此,在ASP. net中使用Access数据库。. NET Web应用程序;必须将包含Access数据库的文件夹配置为本地ASPNET用户具有读和写权限帐户。

换句话说,如果您没有读写权限,您将无法使用.mdb。

有以下选项

  1. 如果权限不能做由于安全原因,但你的web服务器有访问。mdb文件的位置(都位于同一网络),那么你的客户端可以设置一个计划的作业,将备份/复制。mdb到另一个位置,在那里asp.net可以有权限与。mdb工作。然而,这将是同步备份。mdb到生产。mdb的问题。
  2. 设置一个webservice来更新.mdb。它将托管在.mdb所在的服务器上,并具有所有必需的权限。您的应用程序将通过webservice使用.mdb,并且不需要对.mdb有任何权限。
  3. 将.mdb替换为SQL Server Express