2012-09-07 26 views
0

我在項目中添加了一個Linq到SQL數據訪問類,並將一個表拖到了設計中表面,我看着在.cs文件中生成的代碼。我想了解這個片段:「什麼是雙冒號語法的意思是」尋求理解C#[global :: System.Data.Linq.Mapping.DatabaseAttribute(Name =「AdventureWorks2008R2」)]中的這種語法

[global::System.Data.Linq.Mapping.DatabaseAttribute(Name="AdventureWorks2008R2")] 
public partial class AdventureWorksDataContext : System.Data.Linq.DataContext 
{ 
    private static System.Data.Linq.Mapping.MappingSource mappingSource = new AttributeMappingSource(); 

我想我明白在一般的方式,甚至在這種特殊情況下,但我真正的問題是屬性上述屬性是其他地方討論的「全局屬性」(例如,http://www.switchonthecode.com/tutorials/creating-and-reading-global-attributes-in-csharp1

一個必然的問題是如何在Google和/或StackOverflow中搜索::語法的含義?我試過把它放在引號中,最後發佈了這個。

回答

2

命名空間別名限定符(:)用於查找標識符。它總是位於兩個標識符之間,如在這個例子中:

global::System.Console.WriteLine("Hello World"); 

命名空間別名限定符可以是global。這將調用全局名稱空間中的查找,而不是別名名稱空間。

http://msdn.microsoft.com/en-us/library/htccxtad.aspx
http://msdn.microsoft.com/en-us/library/c3ay4x3d.aspx

+0

剛開一個鏈接答案是如此器重上。提供一個小摘要或引用這裏最重要的部分(除鏈接之外)更好。假設鏈接在一段時間後失效。 –

+0

好點。另外,這個相關項目(從上面引用)呢? 「如何在Google和/或StackOverflow中搜索::語法的含義?」 –