0

我在我的项目中添加了一个 Linq to SQL 数据访问类,并将一个表拖到设计图面上,并查看了 .cs 文件中生成的代码。我试图理解这个片段:

[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-csharp 1

一个必然的问题是如何在 Google 和/或 StackOverflow 中搜索 :: 语法的含义?我试过把它放在引号内,最后发布了这个。

4

1 回答 1

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

于 2012-09-07T19:50:41.910 回答