佳礼资讯网

 找回密码
 注册

ADVERTISEMENT

楼主: shinelynn

.net 求救 (Server.MapPath)

[复制链接]
 楼主| 发表于 10-10-2007 02:33 PM | 显示全部楼层
C#.net 可以用Server.MapPath的吗? 我查到的是可以,可是我却用不到。需要import什么东西的吗?

private string ConnStr = "Provider=Microsoft.Jet.OLEDB.4.0;data source="+ Server.MapPath("db_ncmr.mdb");

Error        1        The name 'Server' does not exist in the current context        C:\Inetpub\wwwroot\NCMR\App_Code\DataServer.cs        21        77        http://localhost/NCMR/
回复

使用道具 举报


ADVERTISEMENT

 楼主| 发表于 11-10-2007 08:21 AM | 显示全部楼层
我发现这Server.MapPath原来不能在class里头用的,只能在asp.net的coding里头用。。那我要把这database的connection放在class里,是不是就要hardcode了?
回复

使用道具 举报

发表于 11-10-2007 11:04 PM | 显示全部楼层
原帖由 shinelynn 于 11-10-2007 08:21 AM 发表
我发现这Server.MapPath原来不能在class里头用的,只能在asp.net的coding里头用。。那我要把这database的connection放在class里,是不是就要hardcode了?


可以放在 web.config
回复

使用道具 举报

 楼主| 发表于 23-10-2007 11:16 AM | 显示全部楼层
原帖由 hooi1983 于 11-10-2007 11:04 PM 发表


可以放在 web.config


我在web.config加了这个databaseconnection

<appSettings>
   <
add key="ConnectionString"
     value="Provider=Microsoft.Jet.OLEDB.4.0;data source=db_ncmr.mdb" />
</appSettings>


然后试在我的class里头callconnectionstring

private string ConnStr = ConfigurationSettings.AppSettings("ConnectionString");

Error说,
'System.Configuration.ConfigurationSettings.AppSettings' is a 'property' but is used like a 'method'


propertymethod是什么?
回复

使用道具 举报

 楼主| 发表于 23-10-2007 11:41 AM | 显示全部楼层
可以了,应该用[ ]

private string ConnStr = ConfigurationSettings.AppSettings["ConnectionString"];

可是,这并不能解决我不用hard code database path 的问题啊。。放在web.config和class里好像没分别。。

我的目的是不要去hard code database 的 file path,class应该放进App_Code里,那么database应该是放进App_Data里吧? 我要怎么把这藏在App_Data里的database 叫 到? 在web.config里也是用不到Server.MapPath。
回复

使用道具 举报

发表于 23-10-2007 02:22 PM | 显示全部楼层
Server.MapPath 有什么特别情况非要放在class里头呢?
偶都把它用在code behind里头

Property 类似 structure
Method 类似 function

Property["object index"]
function(var Parameter)
回复

使用道具 举报

Follow Us
 楼主| 发表于 23-10-2007 04:32 PM | 显示全部楼层
哦,"大概"明白了property和method的分别,谢谢。

要放在class里是因为我不要在每一个code behind 写 database connection的code,放在class里变可以重复的用了。假如真的不行,唯有在每个page里的code behind写了。
回复

使用道具 举报

发表于 26-10-2007 07:55 PM | 显示全部楼层
尝试在Page_Load 下 加入   Server.Mapth("~");
回复

使用道具 举报


ADVERTISEMENT

 楼主| 发表于 27-10-2007 11:26 PM | 显示全部楼层

回复 #128 jangancari 的帖子

err。。我。。是固执不要放在page_load啦,哈哈。。我很糟糕啦。以为class一定可以放得到的只是我不懂怎样而已,看来是真的不行。。

谢谢大家帮忙。。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

 

ADVERTISEMENT



ADVERTISEMENT



ADVERTISEMENT

ADVERTISEMENT


版权所有 © 1996-2023 Cari Internet Sdn Bhd (483575-W)|IPSERVERONE 提供云主机|广告刊登|关于我们|私隐权|免控|投诉|联络|脸书|佳礼资讯网

GMT+8, 18-9-2025 11:52 PM , Processed in 0.118285 second(s), 21 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表