2012-01-17 47 views
1

ASP.NET C#中的PHP有没有替代define("BASE_PATH", "http://localhost");ASP.NET(C#)的Define()(PHP)替代

我一直在网上搜索几个小时,但大多数结果给我'asp.net或php的定义',或替代(大声笑?)。

谢谢

+1

您正在寻找'const'? – DerVO 2012-01-17 14:14:31

+0

不完全理解,你想在PHP或C#中定义一个常量吗? – 2012-01-17 14:15:08

+0

好吧,我知道C#中的常量是什么,但我认为PHP中的define(string,string)是完全不同的东西,@MattK – Jason 2012-01-17 14:24:02

回答

3

这做同样的事:

const string BASE_PATH = "http://localhost"; 
+0

谢谢@Andreas。 – Jason 2012-01-17 14:39:56

1

definePHP恒定分配。由于ASP.NET是面向对象的语言,你assingn常量像

class YourCSharpClass{ 
    const string ConstName = <value>; 
} 

但我认为你分配一些特殊的意义那些BASE_PATH变量。您是使用Windows.Forms还是ASP.NET MVC?

+0

我正在使用ASP.NET MVC – Jason 2012-01-17 14:30:25

4

使用静态或适当的可见性有问题的使用常数。

对于基本路径,Request.ApplicationPath可能比硬编码更有用。

+0

谢谢@JonH,我会看看Request.ApplicationPath如何去做。 – Jason 2012-01-17 14:27:31

+0

请注意,如果它是根的URI,则包含'/',但如果它是根中的应用程序,则不包含最终的'/'。当你考虑IIS如何定义事物时,这是有道理的,但在大多数情况下实际上是令人讨厌的。我倾向于将静态设置为'HttpContext.Current.Request.ApplicationPath ==“/”? “”:HttpContext.Current.Request.ApplicationPath'并使用它。 – 2012-01-17 14:32:14

1

我从来没有见过这个,但查找它似乎这个定义只用于准备一个网址?你需要这样做吗?你不能让所有事情都相对?

同样你可以使用AppSettings。