簡體   English   中英

Visual Studio中的命名空間在哪里

[英]Where are the namespaces in visual studio

我是Visual Studio和C#的新手。 我閱讀了有關C#的教程,並且所經歷的所有示例程序都是在名稱空間中編寫的。 但是,當我在Visual Studio上使用模板時,所有預定義的代碼都不在名稱空間內。 程序中的類不應該在名稱空間中嗎? 為什么默認情況下不顯示它們? 我應該定義它們嗎?

謝謝!

[edit]以下是其中一個沒有名稱空間的文件中的代碼。

using System;   
using System.Web.Security;  

public partial class Login : System.Web.UI.Page  
{   
    protected void btnSubmit_Click( object sender, EventArgs e )  
    {  
        // Note: Add code to validate user name, password. This code is for illustrative purpose only.  
        // Do not use it in production environment.          
        FormsAuthentication.RedirectFromLoginPage( txtUserName.Text, false );  
    }  
}

在項目的屬性中聲明了一個默認的名稱空間。 但是,明確聲明它是一個好習慣。 如果您的項目沒有文件夾,則所有類都在同一個命名空間中,因此它是多余的。

命名空間旨在提供一種使一組名稱彼此分離的方法。 在一個名稱空間中聲明的類名與在另一個名稱空間中聲明的相同類名不沖突。 請參閱https://msdn.microsoft.com/en-us/library/z2kcy19k.aspx了解更多詳細信息。

一般

命名空間基本上只是對類進行分組並為Project提供結構的一種方法。

每個名稱空間的類名必須唯一。

您還可以“封裝”您的命名空間。 例如,您可以創建一些命名空間SomeProjectSomeProject.CoreSomeProject.UI

如果您想using SomeProject. Intellisense現在會建議CoreUI

Usasge

因此,要使用SomeProject.Core的Class MyClass ,可以使用三種方法。

  1. 使用Direcitve

using SomeProject.Core;

MyClass調用它

  1. 用整個命名空間調用它

SomeProject.Core.MyClass

  1. 明確使用指令(很少使用,但可能對long名稱空間有用)

using AnyName = SomeProject.Core;

AnyName.MyClass調用MyClass

所以我暫時就這樣。.如果我忘記了什么,只需在評論中告訴我

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM