后台在Man文件夹下,Access数据库在Man/App_Data下面。
Web.Config中:
<appSettings>
<add key="AccessConn" value="Provider=Microsoft.Jet.OLEDB.4.0; Data Source ={0}\\Man\\App_Data\\Company.mdb"></add>
</appSettings> Connection.cs中:
public class DataBaseDB//连接Access数据库
{
public static String ConnectionString = String.Format(ConfigurationManager.AppSettings["AccessConn"], HttpContext.Current.Server.MapPath("."));
}
浏览时总是提示:'D:\我的软件\ASP.NET\Company\Man\Man\App_Data\Company.mdb'不是一个有效的路径。
数据库是存在:'D:\我的软件\ASP.NET\Company\Man\App_Data\Company.mdb'下面的,怎么会提示上面的错误呢?
Web.Config中:
<appSettings>
<add key="AccessConn" value="Provider=Microsoft.Jet.OLEDB.4.0; Data Source ={0}\\Man\\App_Data\\Company.mdb"></add>
</appSettings> Connection.cs中:
public class DataBaseDB//连接Access数据库
{
public static String ConnectionString = String.Format(ConfigurationManager.AppSettings["AccessConn"], HttpContext.Current.Server.MapPath("."));
}
浏览时总是提示:'D:\我的软件\ASP.NET\Company\Man\Man\App_Data\Company.mdb'不是一个有效的路径。
数据库是存在:'D:\我的软件\ASP.NET\Company\Man\App_Data\Company.mdb'下面的,怎么会提示上面的错误呢?
using System.Data.OleDb;......string strConnection="Provider=Microsoft.Jet.OleDb.4.0;";
strConnection+=@"Data Source=MapPath("Authors.mdb");//这里是相对路径OleDbConnection objConnection=new OleDbConnection(strConnection);objConnection.Open();
objConnection.Close();......
Web.Config中:
<appSettings>
<add key="AccessConn" value="Provider=Microsoft.Jet.OLEDB.4.0; Data Source ={0}\\App_Data\\Company.mdb"> </add>
</appSettings> 这样就可以使用,后台放到单独的文件夹下就不行了。
<appSettings>
<add key="AccessConn" value="Provider=Microsoft.Jet.OLEDB.4.0; Data Source ={0}\\Man\\App_Data\\Company.mdb"> </add>
</appSettings>
'D:\我的软件\ASP.NET\Company\App_Data\Company.mdb'不是一个有效的路径。
数据库路径不对。因为我是放在'D:\我的软件\ASP.NET\Company\Man\App_Data\Company.mdb'这里的。
{
public static String ConnectionString = String.Format(ConfigurationManager.AppSettings["AccessConn"], HttpContext.Current.Server.MapPath("~"));
}
要用~,不要用.
<appSettings>
<add key="AccessConn" value="Provider=Microsoft.Jet.OLEDB.4.0; Data Source ={0}\\App_Data\\Company.mdb"> </add>
</appSettings> {0}是什么意思,我在网上找的,但不知什么意思
先看这句string str = String.Format("{0} {1}", "hello", "world"); // 输出 "hello world"{0}, {1} 是占位符!,用第二个,三个...参数替换
那么,
Server.MapPath(.); 获取当前运行页面的物理路径
Server.MapPath("~/"); 获取虚拟目录的物理路径
但是在IIS中添加产品保存时提示:
“/Company”应用程序中的服务器错误。
操作必须使用一个可更新的查询。
如果分区格式为FAT32,则不会出现这个错误提示.但是NTFS安全性高.