WebService 调用问题,求解

tenglong2004 2004-06-15 07:18:56
源码: test: Access库 user: 表
[WebMethod]
public DataSet Cusm()
{
string strSQL=" select * from Test.User order by 用户代码" ;
string strConn="provider=Microsoft.JET.OLEDB.4.0; data source=" +
Server.MapPath("..\\Test.mdb") ;
OleDbDataAdapter adpTest =new OleDbDataAdapter(strSQL,strConn);
DataSet dsTest= new DataSet() ;
adpTest.Fill(dsTest,"user") ;
return dsTest ;
}
调用出错:
System.Data.OleDb.OleDbException: 找不到文件 'c:\windows\system32\inetsrv\Test.mdb'。

为什么? 我的虚拟目录是C:\inetpub\wwwroot
为什么要找 'c:\windows\system32\inetsrv\Test.mdb', 如何改正,请指教!!!
...全文
243 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
tenglong2004 2004-06-18
  • 打赏
  • 举报
回复
To zklvy(风来自地铁和人海) 是的
zklvy 2004-06-18
  • 打赏
  • 举报
回复
你的webservice目录在C:\inetpub\wwwroot 下吗??
tenglong2004 2004-06-18
  • 打赏
  • 举报
回复
再顶一次
tenglong2004 2004-06-17
  • 打赏
  • 举报
回复
自己总结:
1. 不改动程序, 将Test.mdb 拷贝到 c:\windows\system32\inetsrv\ 正常
2. Server.MapPath("..\\Test.mdb") 不变,
修改 string strSQL="select * from Test.User order by 用户代码" ;
为: string strSQL="select * from [User] order by 用户代码" ;
也正常
请高人指点一下,很快结帐!!!
kwork 2004-06-16
  • 打赏
  • 举报
回复
取得当前工程的绝对路径

Path.GetDirectoryName (Server.MapPath(this.Page .Request .Url.AbsolutePath ) )
tenglong2004 2004-06-16
  • 打赏
  • 举报
回复
还是不行耶,好像权限问题吧,不知道如何加权限,哪位高人能不能说详细点啊
hbzxf 2004-06-15
  • 打赏
  • 举报
回复
帮你顶
tenglong2004 2004-06-15
  • 打赏
  • 举报
回复
关键怎么解决啊,总不能把Test.mdb 拷到c:\windows\system32\inetsrv目录把
八爪鱼-杭州 2004-06-15
  • 打赏
  • 举报
回复
".."表示当前路径,asp.net运行时的默认当前路径是c:\windows\system32\inetsrv而不是你的网页所在的虚拟目录的路径。

12,162

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 Web Services
社区管理员
  • Web Services社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧