/ / Яке значення цих різних типів простору імен в c # [closed] - c #

Який сенс цих різних типів простору імен в c # [closed] - c #

Я хочу знати різницю для цього коду

Я знаю, що код нижче містить простори імен

using SampleAngularApp.Models;
using System;
using System.Collections.Generic;

а також я знаю, що код нижче містить простір імен

namespace SampleAngularApp.Controllers
{
.......
}

У чому різниця між цими двома типами просторів імен?

Відповіді:

3 для відповіді № 1

Лінія namespace SampleAngularApp.Controllers є визначення простір імен (або область дії або віртуальна сегрегація). Це може бути перший екземпляр простору імен, або він може бути доданий до того ж простору імен, який вже визначено в іншому місці. Ці простори імен (областей) не залежать від фізичних меж кодів, тобто один і той самий простір імен може існувати в двох або більше різних збігах.

Лінії using SampleAngularApp.Models; і т.д. імпорту простір імен, IOW, що надає доступ до локального коду. Вам не потрібно використовувати using Ви можете вказати повний простір іменкожен раз, коли ви використовуєте тип або посилання на метод / властивість, але це просто божевілля. Встановлення цього рядка у вашому коді потенційно може бути лише однією половиною процесу - ви також повинні додати посилання на збірку, яка має код у просторі імен, який ви хочете використовувати.


1 для відповіді № 2

З

namespace SampleAngularApp.Controllers { ....... }

Ви оголошуєте простір імен, який є об'єктом, що дозволяє організовувати код і запобігає створенню унікальних глобальних типів.

З

за допомогою SampleAngularApp.Models;

використання системи;

використання System.Collections.Generic;

Ви повідомляєте компілятору, що цей блок коду використовує вищевказані простори імен accessible.

Означає, що ви можете використовувати кожну річ у своїй області застосування у вашій заявці.


1 для відповіді № 3

При використанні клавіші "using". Ви повідомляєте компілятору, який ви хочете використовувати цей простір імен і кожен клас під цим простором імен у вашому класі

При використанні "простору імен" ключ ви говоритекомпілятор цього розділу між "{" і "}" є моїм простором імен для мого класу, тому, коли ви будете використовувати ваш клас в іншому просторі імен, ви повинні додати його у використанні оператора.

ex:

Using SampleAngularApp.Controllers

тоді я можу використовувати всі ваші класи в просторі імен "SampleAngularApp.Controllers"