C#中的这个冒号是什么意思
在此代码中:C#中的这个冒号是什么意思,c#,C#,在此代码中: var hasManyToOne=false; foreach(var property in entity.Descendants("Property")) { if (property:manyToOne!=null) { hasManyToOne=true; } } 变量“property”后面的冒号是什么意思?这是一个周期吗?我在C语言中找不到任何显示冒号的引用。这是一个键入错误(因为属性。在XElement中没有manytone)或其他内容,但有一件
var hasManyToOne=false;
foreach(var property in entity.Descendants("Property"))
{
if (property:manyToOne!=null)
{
hasManyToOne=true;
}
}
变量“property”后面的冒号是什么意思?这是一个周期吗?我在C语言中找不到任何显示冒号的引用。这是一个键入错误(因为属性。在XElement
中没有manytone
)或其他内容,但有一件事是肯定的
这不是有效的C#语法,甚至不会编译。看这里
表示无法编译的错误代码。
:
不是有效的C#运算符。
.在什么C#编译器下合法?我认为这就像三元运算符一样使用。这段代码真的可以编译吗?或者你在网站或电子书中看到过吗?如果是这样的话,它可能是一个输入错误:)对我来说似乎是一个输入错误,它可能是
属性??运算符无效的运算符并不意味着该语言中不存在该运算符。示例:if(1==1?true:false)
isvalid@Bart它作为内联if(条件?真部分:假部分)的一部分存在,但不是作为一个独立的运算符。@Beatles1692 OP甚至没有使用运算符这个词:
不是运算符是正确的。调用方法和命名参数时,使用冒号,例如,这是合法语法:SellItem(价格:9.25m)
您甚至可以在冒号前面加一个空格:
。当然,这并不意味着它是一个运算符,但它看起来有点像原始问题中的代码。