Asp.net &引用;“Bool”;在Mono/XPS上运行的.NET应用程序中找不到

Asp.net &引用;“Bool”;在Mono/XPS上运行的.NET应用程序中找不到,asp.net,mono,Asp.net,Mono,我对.NET和Mono非常陌生。我有一个.NET4应用程序,我正试图在本地运行,当我试图运行它时(在Ubuntu上使用xps4),我得到了一个编译错误。在stacktrace的末尾,它说: /tmp/jeremy-temp-aspnet-0/3b8f3547/App_Web_635c7158_48.cs(32,21):错误CS0246:找不到类型或命名空间名称“bool”。是否缺少using指令或程序集引用 这是否意味着它无法识别布尔类型?谷歌搜索没有多大帮助 更新-以下是代码: public

我对.NET和Mono非常陌生。我有一个.NET4应用程序,我正试图在本地运行,当我试图运行它时(在Ubuntu上使用xps4),我得到了一个编译错误。在stacktrace的末尾,它说:

/tmp/jeremy-temp-aspnet-0/3b8f3547/App_Web_635c7158_48.cs(32,21):错误CS0246:找不到类型或命名空间名称“bool”。是否缺少using指令或程序集引用

这是否意味着它无法识别布尔类型?谷歌搜索没有多大帮助

更新-以下是代码:

public virtual @bool ShowRecentPlans {
     get {
        return ((@bool)(this.GetPropertyValue("ShowRecentPlans")));

当您在标识符(如类型名)前面加上
@
前缀时,您告诉编译器,尽管它看起来像保留字,但它引用了程序中定义的内容

除非你有这样的定义

public class @bool
{
...
}
那这就行不通了

试一试

例如,如果您想使用关键字
new
作为标识符,您可以:

int new = 5; /// error!
int @new = 5; /// compiles
@
当然也用于告诉编译器应该如何解释字符串

// throws an error because \p and \m look like formatting sequences
var path = "c:\pub\myFile.txt"; 
// compiles 
var path = @"c:\pub\myFile.txt"; 
还有,我只想问:是什么让你一开始就用
@bool
而不是
bool


(而且,作为记录,使用关键字作为标识符是一个非常非常糟糕的主意。)

当您在标识符(如类型名)前面加上
@
前缀时,您告诉编译器,即使它看起来像一个保留字,它也引用了程序中定义的内容

除非你有这样的定义

public class @bool
{
...
}
那这就行不通了

试一试

例如,如果您想使用关键字
new
作为标识符,您可以:

int new = 5; /// error!
int @new = 5; /// compiles
@
当然也用于告诉编译器应该如何解释字符串

// throws an error because \p and \m look like formatting sequences
var path = "c:\pub\myFile.txt"; 
// compiles 
var path = @"c:\pub\myFile.txt"; 
还有,我只想问:是什么让你一开始就用
@bool
而不是
bool


(而且,作为记录,使用关键字作为标识符是一个非常非常糟糕的主意。)

您的返回类型应该是
bool
,而不是
@bool
您的返回类型应该是
bool